API Support Forum
User Profile

Viewing User Profile for: ETrifonov


Feb 09, 2015 09:52 AM

Jan 17, 2021 10:56 PM

Jan 17, 2021 10:56 PM

Post Statistics
ETrifonov has contributed to 50 posts out of 5029 total posts (0.99%) in 2172 days (0.00 posts per day).

20 most recent posts:

API Support » basic connection error Jan 17, 2021 @ 10:56 PM (Total replies: 1)

Hello Dave,

Yes, api.gainfutures.com port 9210 is a correct address.
There are few error handlers in basic example code:

Client.Logging.ErrorOccurred += OnError;
Connection.LoginFailed += OnLoginFailed;
Connection.Disconnected += OnDisconnected;

You can try to get additional information from that handlers.
But, looks like application cannot reach our servers and I'm not sure why at that point.
Are you able to browse https://api.gainfutures.api site?
Also, it is depend on what day you are trying to connect.
Usually we have maintenace period on weekends.

API Support » No errors reported on risk violation Jul 27, 2020 @ 01:54 PM (Total replies: 5)

Hi Xingyu,

Please use ITradersApi.TraderError event to receive risk violation errors.
Client.Traders.OnTraderError += this.ErrorOccured

Thank you.

API Support » No errors reported on risk violation Jul 20, 2020 @ 08:03 AM (Total replies: 5)

That handler is moved to GFClient.Logging.ErrorOccurred.

API Support » No errors reported on risk violation Jul 17, 2020 @ 02:38 PM (Total replies: 5)

Hello Xingyu,

If you placing an order which exceed buying power, it will be rejected and will should receive order update.
Not sure why you expecting reject message via GF.Api.Messaging.Notifications.
Please GF API Notification documentation https://gainfutures.com/GFAPI/

Thank you.

API Support » Getting Error if application has no internet access Jul 01, 2020 @ 12:11 PM (Total replies: 2)


From just stack trace it is unclear what cause that.
Can you please provide more details, like connect/disconnect code.
Are you calling connect method on a GF API thread?

Thank you.

API Support » Issue with @6C and similar symbols Jun 30, 2020 @ 09:30 AM (Total replies: 6)


You should update GF API.
Can you please tell us GF API version you are using?

API Support » Ticks, DOM messages stop when a historical tick request is made Jun 25, 2020 @ 01:09 PM (Total replies: 1)

Hello Peter,

I don't see issues you are described.
Having 5 DOM subscriptions I see no delays on historical tick data is returned.

What the duration time frame you are requesting?
What API version and user name you are using?
Maybe you can provide more information about your code?

Thank you.

FIX Support » No Getting Charts for 1 min or 15 min Jun 22, 2020 @ 09:11 AM (Total replies: 2)


We don't see issues with 1 and 15 min charts.
Can you please provide more details - user name, connection url, app/code use used for subscription.

Thank you.

API Support » Issue with @6C and similar symbols Jun 03, 2020 @ 07:27 AM (Total replies: 6)


Issue has been fixed.
Estimated release dates:
06/06 - API
06/13 - SIM
06/20 - PROD

Thank you.

API Support » "ContractID Invalid" error returned in Order submission Jun 03, 2020 @ 07:19 AM (Total replies: 4)

Thank you for details.
Can you please also provide account you used to place orders.

Also, I see that to place order you first deserialize it.
Question is - does _clientRunner.Client is the same, used for contract lookup and was it connected during whole session?
To send order, API should know about contract.
So, in case you lookup contract. build draft, serialize order draft, reconnect API, deserialize order and trying to send it - you will get that error.
After reconnect you should lookup contract again, to make sure API knows about it.

Thank you.

API Support » Issue with @6C and similar symbols Jun 02, 2020 @ 12:41 PM (Total replies: 6)

Hello multichartsDEV1,

Thank you.
We see the problem with continuous contracts subscriptions and working on it.
We will let you know when it will be fixed and released.

API Support » "ContractID Invalid" error returned in Order submission Jun 02, 2020 @ 09:37 AM (Total replies: 4)

Hello RAnde,

Unfortunately it is not clear how exactly you are creating order.
If you are getting contract via api and then use it to create new order draft, you shouldn't have such issues.
Can you please provide code and GF API version.

Our sample in API documentation:

Thank you.

API Support » Unable to receive Level 1 data May 19, 2020 @ 08:54 AM (Total replies: 1)

Hello Andrew,

Can you please provide more details, like API version, contract symbol, connection address, etc.
Please also check our example: https://bitbucket.org/GainFuturesDev/basicexample/src.

Regards, Evgeny.

API Support » SendOSOOrders instead of SendLinkedOrders Mar 19, 2020 @ 12:41 PM (Total replies: 1)

Hello, Mauro.

Corrected answer to your question.
Yes SendLinkedOrders has been replased to SendOSOOrders.

Thank you.

API Support » typelib missing Nov 07, 2018 @ 11:51 AM (Total replies: 3)

Hello WWatson2582,

Please update to fresh OECAPICOM

Thank you.

Market Data » Receiving only 2 bars Apr 20, 2018 @ 09:51 AM (Total replies: 3)


Initially, you should receive requested amount.
After that you will receive incremental updates for bars.

API Support » Placing Trailing Stop Order Nov 02, 2017 @ 07:07 AM (Total replies: 5)

OrderDraft.Price is Stop Price.
When market hit this price, order will be modified to Market Order.

API Support » Placing Trailing Stop Order Nov 01, 2017 @ 09:58 AM (Total replies: 5)

Hi RAnde,

#1 Yes, your understanding correct, but with remarks below.

#1.2 This because of minimal distance - one contract.TickSize.
Delta will be used to calculate distance.
For provided sample distance will be (Delta + contract.TickSize).
And Trailing Stop Price will be modified by (+/-) Distance when market price becomes outside of (Reference +/- Distance).
Sorry for confusing you.

API Support » Placing Trailing Stop Order Oct 31, 2017 @ 02:50 PM (Total replies: 5)

Hello RAnde,

#1 Depending on order side (buy or sell), order will be modified to (+-Delta) price on market price become outside of (Reference +- Delta).

#2 You send Trailing Stop order next way:

var draft = OECClient.Global.CreateDraft();
var contract = OECClient.Global.Contracts["ESZ7"];

draft.Quantity = 1;
draft.Contract = contract;
draft.Side = OrderSide.Buy;
draft.Type = OrderType.TrailingStopLoss;
draft.Account = OECClient.Global.Accounts["TestAccount001"];

// stop price should be greater than last price for ‘buy’ order
draft.Price = contract.CurrentPrice.BidPrice + contract.TickSize * 2;

// delta, should be equal or more than 0
var delta = contract.TickSize;

// Trailing stop orders must be send with delta value diminished by one tick
draft.SetTSData(contract.CurrentPrice.LastPrice, Math.Max(0, delta - contract.TickSize));

FIX Support » Spread Execution report bugs May 16, 2017 @ 08:29 AM (Total replies: 4)


Our simulation fill server is not support iceberg for spreads, sorry for confusion.

We will send:
    ER_NEW (150=0, for spread)
    ER_TRADE (150=F, for individual legs)
    ER_CALCULATED (150=B, for spread)

So, we won't send partial fill reports with updated LeavesQty for spread, only for individual legs.
Thank you.

Edited by ETrifonov on May 16, 2017 08:30 AM