Keyboard Shortcuts
ctrl + shift + ? :
Show all keyboard shortcuts
ctrl + g :
Navigate to a group
ctrl + shift + f :
Find
ctrl + / :
Quick actions
esc to dismiss
Likes
- Twsapi
- Messages
Search
Fw: twsapi: TraderGuard is now 4.56MB - check TWSAPI file area.
开云体育?
----- Original Message -----
From: traderguard
To: twsapi@...
Sent: Wednesday, July 03, 2002 9:18 AM
Subject: twsapi: TraderGuard is now 4.56MB - check TWSAPI file
area. You can test it with ANY symbol you want ! I also removed dapt.database from program to lower its size to 4.56MB Just type any symbol into "symbol" text field and click connect. You can download it from FILES area.. It is for as long as Scott will allow it. If not there please, use this link to get it. :)) AMJ To unsubscribe from this group, send an email to: twsapi-unsubscribe@... Your use of Yahoo! Groups is subject to the . |
I'll find and post the TradeGuard screen shot in the Bookmarks.
Techguy
There was a link to it in one of the posts. I'll find
it and book mark it. --- rkdhamija <rkdhamija@...> wrote: I can't find TraderGuard at the files area. Has__________________________________________________ Do You Yahoo!? Sign up for SBC Yahoo! Dial - First Month Free |
Re: The Ultimate GUI Features list and Screen Shot post up.
I can't find TraderGuard at the files area. Has anyone got newer
version (smaller in size that allows other symbols than GE)? Pls post the link. Thanks. Also, the screen shot (Form1) on photos belongs to which app? Thanks Ravi --- In twsapi@y..., "techguy1313" <techguy1313@y...> wrote: Thanks to Scott for posting up the screen shot of his GUI in theother traders do not include in their Interface or GUI? |
The Ultimate GUI Features list and Screen Shot post up.
techguy1313
Thanks to Scott for posting up the screen shot of his GUI in the
Photos section. It would be nice if others would do this too. It would me nice to see the Art Work / Skins of the different GUI's being crafted by the community. I printed out Trader Guards screen shot and poured over it. What features in your interface do you find critical that most other traders do not include in their Interface or GUI? Looking forward to your ideas. Techguy |
TWS_orderStatus
Robert Carey
开云体育My VB6/Win98 2ed application auto trades US
equities with IB's ActiveX api. I observed that the position size in my system
was frequently double what was intended.
I traced?that bug in my application back to
it's source.
TWS_orderStatus frequently throws 2 replies to one
trade. Each has the same data for price and size. There have been no partial
fills.
I reported this to IB on 7/3.
I wrote a fix in which my interface to TWS api
keeps track of order sizes and their changes. It blocks reporting the second
twitch to the rest of my application.
Watch out for this bug. It will send your app into
a tizzy.
RCarey |
Re: twsapi: Java 1.4 slower?
Michel
开云体育I also
reverted to 1.3.1 and I remember having a message box from TWS needing 1.4 for
something but I can't remember what...
?
Michel.
|
Re: twsapi: Java 1.4 slower?
Carl Erikson
Yes, I have noticed this. It seems like Java 1.4 is
maybe a little more efficient in terms of memory. However, I'm guessing that Sun did something to make the Swing implementation "better" which in turn made it slower. I still use Java 1.3.1. I seem to recall somebody saying something that you needed Java 1.4 for a certain new Swing construct. Not sure if this is true. It seems to work for me using the old Java (and it works faster). Carl --- Michel <migurull@...> wrote: I've updated to Java 1.4 from 1.3 and the trader __________________________________________________ Do You Yahoo!? Sign up for SBC Yahoo! Dial - First Month Free |
Re: Invalid symbols
bee_jay_61
Maybe the second method works too. I never used 40 or more symbols in
ReqMktData so I don?t know what kind of error message will appear if the TWS checks for 40 symbols. But maybe the TWS checks first for an invalid symbol regardless how many symbols are in ReqMktData. Than it should allways work. You have to try it out. This method is easier than the first one. BeeJay --- In twsapi@y..., szeyu73 <no_reply@y...> wrote: thanks BeeJay.if text.you don?t get an ORDERSTATUS for the order id 12345 within acertaintime, try to cancel that order with order id 12345. Normally thanyouwill get an error message "Can't find order with id 12345". Thisreturned ifThat?s what I do when I call ReqMktData. iifandplace an order to BUY 100 shares of XYZ, which is not valid. thetheresymbol is in the list before placing the order. |
What exactly does traderguard do?
thepermuk
Is it just a program that creates a trailing stop?
I designed it for scalpers to profit from everyOk single trend change with "adaptive Automation Engine" monitoringmarket tick by tick and in real time. Your gonna have to explian this one. You will love it.Automate, so how does it do this? Does it trade for me? Whats this automation buisness. Please explain this. How or what is the best way to use it. How about an example And what is your private email Mr. Traderguard. Thanks |
Re: Invalid symbols
szeyu73
thanks BeeJay.
it seems that your first method will work and i may change to your algorithm later. the second one will work at the beginning. but i think there is a limit of 40 symbols in reqMktData, as i read in other threads here. it may fail some time later. i'd suggest IB to raise an ErrMsg in this case. thanks very much again from hong kong --- dustin --- In twsapi@y..., bee_jay_61 <no_reply@y...> wrote: I don?t have this problem but maybe you can do this:symbol (ex. "XYZ") than you get no error message and NO ORDERSTATUS. So ifcertain time, try to cancel that order with order id 12345. Normally thanyou will get an error message "Can't find order with id 12345". Thisreturned 0 items for ticker id 123". Check the error message for that text.i andplace an order to BUY 100 shares of XYZ, which is not valid. invalid.OrderStatus), but just make a popup in the Trader Workstation therethe any better solutions? |
Re: twsapi: Re: Ways of filtering bad quotes from TWS
Carl Erikson
Hey Mark,
I don't know what is causing your problem. However, I just wanted to mention that in my programs, m_pClient->checkMessages() is called everytime there is an event and is not associated with any timer. If you check out the latest SocketClient source from IB, they do this too (they changed this from earlier versions where the checkMessages() was on a timer). On the latest TWS, check out: SocketClient/src/EclientSocket.cpp, line 647 Seems like this shouldn't help (and probably won't), but I haven't had bad quote problems like the ones you are experiencing. Are these bad quotes coming from the demo TWS or the real thing (or both)? Good luck, Carl --- mbluhm2001 <mbluhm2001@...> wrote: I guess the first question is why do you turn off __________________________________________________ Do You Yahoo!? Sign up for SBC Yahoo! Dial - First Month Free |
Re: twsapi: parameter list for orderstatus?
Richard Foulk
This does sound a bit like a bug and should probably be reported to IB.
Richard } Yes, not very good names for variables, but till now seems to not cause much } problems. } } Michel. } -----Mensaje original----- } De: marinindextrader [mailto:marinindextrader@...] } Enviado el: jueves, 04 de julio de 2002 22:25 } Para: twsapi@... } Asunto: Re: twsapi: parameter list for orderstatus? } } } the word Status is a reserved property name for certain objects } } When I type it into my editor it automatically caps the lead } letter.... } } Try changing the variable declaration to a different name, such as } TWSstatus or something } } There are three and counting uses of VB keywords or propertey names } in the standard TWS API: } } "right", "currencey" and Now "status" } } Pretty lame IMHO } } Scott } } PS please let us know if this resolves the issue } |
Re: Invalid symbols
bee_jay_61
I don?t have this problem but maybe you can do this:
When you place an order with an order id 12345 and an invalid symbol (ex. "XYZ") than you get no error message and NO ORDERSTATUS. So if you don?t get an ORDERSTATUS for the order id 12345 within a certain time, try to cancel that order with order id 12345. Normally than you will get an error message "Can't find order with id 12345". This could be an indicator that the symbol was invalid. Or another way that could help you: Call ReqMktData for that symbol. If the symbol does not exist you will get an error message like "Security definition request returned 0 items for ticker id 123". Check the error message for that text. That?s what I do when I call ReqMktData. Greetings from Germany BeeJay --- In twsapi@y..., szeyu73 <no_reply@y...> wrote: hello.the symbol is in the list before placing the order. |
Invalid symbols
szeyu73
hello.
i found some problem in placing invalid symbols. for example, if i place an order to BUY 100 shares of XYZ, which is not valid. the TWS API won't tell my program thru the API (such as ErrMsg and OrderStatus), but just make a popup in the Trader Workstation program. hence i have no no way to know that the symbol is invalid. my solution is to keep a list of avaliable symbols. i'll check if the symbol is in the list before placing the order. it works, but i have to update the list from time to time. is there any better solutions? thanks --- dustin |
Invalid symbols
szeyu73
hello.
i found some problem in placing invalid symbols. for example, if i place an order to BUY 100 shares of XYZ, which is not valid. the TWS API won't tell my program thru the API (such as ErrMsg and OrderStatus), but just make a popup in the Trader Workstation program. hence i have no no way to know that the symbol is invalid. my solution is to keep a list of avaliable symbols. i'll check if the symbol is in the list before placing the order. it works, but i have to update the list from time to time. is there any better solutions? thanks --- dustin |
Re: TICK DATA
Shukrainternationals
开云体育This is a new subject. I do not know whether this fits into
this message board.
?
I collect data for a futures symbol FEU50STO. It is a future
on 50 EU Stocks index. It is traded in FSE (Frankfurt) exchange. Now, if I fail
to collect the ticks from IB workstation in real time, then, where can I get
this data at the end of the day?
Thanks.
? |
Re: twsapi: Re: Ways of filtering bad quotes from TWS
Michel
开云体育I see
you are using C++ API, and I'm using ActiveX VB but for the purpose of this
discussion this is not a problem.
?
First
of all we need to understand how IB sends price and size
changes:
- if
price changes but not size, IB sends a tickPrice event/message with the new
price.
- if
size changes but not price, IB sends a tickSize event/message with the new
size.
- if
price AND size change, IB sends a tickPrice and a tickSize event/message with
new price and new size.
- if
price NOR size change, IB sends... nothing.
?
I
asked IB about the timming of this events and they say:
- they
send bursts of messages with new values (if any change) every 0.7
seconds.
-
order in which tickPrice and tickSize are fired is not guaranteed (actually,
tickPrice comes before tickSize but this can be different in new versions so we
must assume there is not a defined order in this events).
?
The
problem with this 'differential' approach (only changes are transmitted) is that
when we receive a tickPrice (or tickSize)event/message, we never know if it will
be alone or followed by a tickSize (or tickPrice).For example, as you explain
the way you handle this events, when you empty the message queue
(?m_pClient->checkMessages()) and find for example a newPrice (or when
you receive a tickPrice event), you can't process it immediatly (assuming a new
tick with newPrice and oldSize) because you dont know if it will be followed by
a newSize message/event... so the only way is to WAIT A CERTAIN TIME to allow
ALL messages related to a tick to reach your application.
This
is the reason for the use of a 'one shoot' timer of 200 ms: every reception of a
newPrice or newSize event resets this timer, allowing a time frame of 200 ms. to
eventually receive other messages/events related to the same
tick.
Only
when this tempo had compleded, you are sure to have received all events and can
begin to process the new tick.
The
200 ms. is arbitrary and based on some tets: generally tickSize, when present,
comes a few milliseconds after tickPrice but you must allow some delay (for
example, tickSize message could be routed differently on the net and take more
time).
Also
during this 200 ms, your program can complete other pending tasks related to the
precedent tick (for example archiving it in a file). The idea behind it is,
assuming a new tick every 0.7 second, to allow 200 ms to complete the tick and
500 ms to process it. This 500 ms is more than sufficient: I make lots of tests
and?displays (including a real time graph of the last 15 minutes ticks) in
less than 50 ms in Visual Basic with an Athlon 700 MHz on
WinXP.
?
The
reason why I turn off the timer is now obvious: I only need it AFTER a tickPrice
or tickSize event to define a time slot during which I consider all messages
pertaining to the same tick. The timer can be off for minutes if no new
tickPrice nor tickSize events are received. Dont confuse this timer with the
timer needed in the API to poll the message queue.
?
Hope
this can help and also interessed in other ways to implement
it.
?
Michel.
?
?
|
Re: Ways of filtering bad quotes from TWS
marinindextrader
TriPak44...
Can you contact me via email outside of the discussion board? Thanks Scott --- In twsapi@y..., tripack44 <no_reply@y...> wrote: I filter for zero last price, ask and bid price in both the dataquotes being off but I'm only essentially dealing with the Minis and Ibad ticks and clumps of bad ticks. To get rid of single bad ticks, justback inside your desired range, you have a high probability that it wasa bad tick.possible bad ticks and whether or not to filter. It is not an exact sciencemade a mistake, hundreds of trades can be busted, thus leading to "badthat thethequote can be outside the previous quote. But to handle gaps, ifthenquote is out of range Y number of times (i'm starting with 5)usezerothat new quote. Also I don't allow quotes that are a value ofeither. |
to navigate to use esc to dismiss