I've written an app that uses Sterling to trade. It's written in Delphi and trades fairly frequently - say 200 trades a minute. We're consistently having problems with Sterling Trader staying up and running. The app generates a signal to trade a symbol, uses STIQuote to get a quote, then sends an order. Very often this means that it is retrieving quotes for hundreds of different symbols during a short period. The app DeRegisters the quotes as they come back from Sterling, so we're not running into the hard quote limit in Sterling. This works fine for a period of time and then Sterling Trader just crashes. Sometimes it will work for several minutes without crashing and other times it will crash after just a couple trades. Sterling has looked at the dump files and determined it is coming from a QuoteSnap and particularly some Windows DLL that Sterling Trader uses to perform that function. It seems that even though their app is crashing, Sterling doesn't seem at all motivated to fix this problem. Has anyone seen this issue and somehow worked around it?? In my code, I'm instantiating a new STIQuote object for each signal - I think next I'll try using a single STIQuote object across the entire app and see if that helps. Any advice?
If you're sending 200 orders/sec I would think you could afford a separate quote source? Not trying to be a smartass, but seriously, you're pushing Sterling awfully hard. It's an API bolted onto a manual trading platform. I would think there's a better solution out there for you, like maybe FIX?
Realistically, 150 to 200 transactions per second is about max for an API - - there are higher priorities than window handles being created / destroyed, I would move to a fix interface so your quote side can commit faster, which would logically remove some of the processing burden... Hope that helps, richardm
200 transactions per minute not second. And that's the very high end. I'll look around for another quote provider perhaps. Also, would it matter that I'm instantiating a new STIQuote object for each signal? Anyone think it will help to use the same quote object across signals?
Sorry, my bad on misreading speed. I'm not sure if instantiating would help. I run one instance only, but I'm not constantly turning symbols on and off. The only way to know for sure is to try it for yourself. I have friends that use NXCore from DTN to manage large #'s of symbols. I myself use the regular DTN quote feed for some programs. Their API support is excellent, though it does cost money. Been happy with the feed but my needs aren't that demanding.
When Delphi 2007 imports the SterlingLib COM object, it seems to import successfully, but it doesn't import the structQuoteSnap type correctly. The app compiles ok with the imported TLB.pas file, but I get a runtime error of: "Invalid Variant Operation" when I try to access the bstrSymbol property of the structQuoteSnap object that is passed into the OnSTIQuoteSnap event handler. Has anyone worked around this problem successfully?
has anyone dealt with the issue of TopOfBook data freezing (no longer updating) through the STI API? im using it to build market bid / ask spreads (though im not sure if thats the best way to do it).
I am having problems with the T-Stop orders and I was wondering if anyone else here that uses T-Stop orders have been experiencing the same issues. I have a n application that sends Trailing Stop orders using the API....All of the orders seem to be fine and appear in my open orders in Sterling, after the order has been received by sterling one of the following things happen: (a) The order updates and trails the stock price by the given increment and when the stock reverses the trigger fires the order. (b) Sterling does not update the price of the order(does not trail the price) and when the stock price reverses to the initial price the order gets executed.(it acts as regular Stop order) (c) Sterling does not update the price and when the stock reverses direction the order never gets executed and stays in the Server side of Sterling. I have coded my application in VB. Scenario (a) is what is suppose to happend, (b) and (c) are wrong, specially (c). The weird thing is that orders are posted on my open order summary of sterling and I get a confirmation message from the API with no errors......when I called them they could see my orders in the server and had no logical explanation on why the orders got stuck in their servers.... Any help is very much appreciated.
I write my strategy in Update Quote event, once hit the trigger, it fires an IOC order. I am a newbie in trading so I dont know what Trailing Stop orders are....
Hey Dhride I have no experience with T-Stps in Sterling but I have herd from individual traders that the T-STPs in sterling do not work correctly in general. I dont know if this is the case or not as I have never personally used them. It is possible that the problems your seeing are just a general T-STP issue. We bypassed these issues completely by making our own trailing orders. Hope this helps if you would like I can try and find out specifically what the issues the traders I have talked to have experienced with the T-STPS.