API Support Forum
User Profile

Viewing User Profile for: JAstrahan


About

Sep 01, 2020 02:50 PM

Nov 21, 2020 05:22 AM

Nov 21, 2020 05:22 AM



Post Statistics
JAstrahan has contributed to 3 posts out of 5677 total posts (0.05%) in 1541 days (0.00 posts per day).

20 most recent posts:

API Support » New to the API, need some guidance Nov 21, 2020 @ 05:22 AM (Total replies: 4)

Alright, please let me know as soon as you can. I'm programming this for myself but also a group of investors. The entire process to get started has been quite complicated for me.

With other API's you simply supply an API key and you can call a command like place.order(symbol_id,contract_amount) and an order would be placed.

To place an order here, it looks like I need to do something like this:

gfClient.Connection.Aggregate.Connect(
new ConnectionContextBuilder()
.WithUserName("username")
.WithPassword("password")
.WithPort(9210)
.WithHost("api.gainfutures.com")
.WithUUID("9e61a8bc-0a31-4542-ad85-33ebab0e4e86")
.WithForceLogin(true)
.Build());


The username and password to use her is not very clear though as I mentioned in my previous question, and how can I test my automated strategy if I'm now allowed to test on the live OR demo server?

To eventually place an order once I figure out how the login details work, looks like I'll do something like below, correct?

private static void PlaceOrder(GF.Api.IGFClient client, GF.Api.Contracts.IContract contract, OrderSide orderSide, double limitPrice, string comments)
{
if (client.Orders.Get().Count == 0 || client.Orders.Get().Last().IsFinalState)
{
OrderDraft orderDraft = new OrderDraftBuilder()
.WithAccountID(client.Accounts.Get().First().ID)
.WithContractID(contract.ID)
.WithSide(orderSide)
.WithOrderType(OrderType.Limit)
.WithPrice(limitPrice)
.WithQuantity(1)
.WithEnd(DateTime.UtcNow.AddMinutes(1))
.WithComments(comments)
.Build();
IReadOnlyList validationErrors = client.Orders.Drafts.Validate(orderDraft);
if (validationErrors.Any())
{
Console.WriteLine($"ERROR. Order {orderSide} {orderDraft.Quantity} {contract.Symbol} @ {contract.PriceToString(limitPrice)} Limit is invalid:");
foreach (var error in validationErrors)
Console.WriteLine($"\t{error.Message}");
}
else
{
GF.Api.Orders.IOrder order = client.Orders.SendOrder(orderDraft);
Console.WriteLine($"Order {order} was sent");
}
}
}


Hopefully this is the equivalent of me calling an API to do the buy/sell orders. Please let me know thanks!

API Support » New to the API, need some guidance Nov 20, 2020 @ 02:32 PM (Total replies: 4)

Can you please help with the other points, I want to be clear, python is NOT required. I can program in C# just fine. As for that library I should not have started the question off with that, I will contact their authors. The other questions are critically important to find answers.
Edited by JAstrahan on Nov 20, 2020 02:33 PM
Edited by JAstrahan on Nov 20, 2020 02:39 PM

API Support » New to the API, need some guidance Nov 19, 2020 @ 07:48 PM (Total replies: 4)

I'm looking to trade with the API for trading futures. I have found a library here (https://pypi.org/project/gcapi-python/), since I prefer to use Python.

1.) Will this library allow me to trade futures? (I'm not sure since it mentions forex only)

2.) If not, what can I use to trade futures?

3.) I was told that when I'm doing testing that it will NOT trigger against the live server until I'm approved? How does this approval process work exactly? Do I start by programming something using their demo servers? What are the demo servers? How do I know what credentials to use for the demo servers? I have a developer account, which is what I'm using to connect to this forum, is this the credentials I use?

4.) I have a live trading account currently that is funded. Currently I am using Tradingview to do my strategies. I set alerts there which trigger http requests to an API server on Microsoft Azure. From there I have it processing whether to do orders or not, hopefully with the API in python, but if need be I can write a Serverless function in c# as well. My goal is to have Tradingview alerts trigger buy/sell's against my gain futures account automatically. Are there any problems with this that you foresee?.

4a.) To be crystal clear since there was a lot of confusion when I talked to support about this, I already have the Tradingview connected to my gain for MANUAL trading. I do this all the time daily. My goal is to sidestep this entirely and let the automated strategies I wrote in Tradingview (pinescript) trigger alerts that then run code on a Microsoft Serverless Function which in turn calls the gain API to place orders buy or sell etc...

Let me know if I'm even in the right place for doing this, what downfalls I may run into or if this seems like an okay strategy to pursue?

Thank you for taking the time to respond back. I apologize about all the questions. I greatly appreciate any help you can give me!