Page 1 of 1
High speed needed
Posted: Fri Aug 19, 2005 11:03 am
by syswizard
Does anyone know if Robotask would be able to do this:
C++ Windows-based stock order entry platform with price quotes
Here are my needs:
1) To grab the handles of several windows in this application
2) Be able to get from a window either the stock price quotations in a continuous manner or every second and store as a variable in Robotask.
3) Have Robotask open a simple text-based file that has 3 columns:
stock symbol, Stop price, Buy/sell indicator
when the price stored in the variable goes above or below the Stop price from the file, then send a keystroke to the application which will perform a market buy or sell order.
Does this seem DOABLE under Windows/XP ? Because it is a REAL-TIME application, will I have problems of "cooperation" between Robotask and the order-entry platform ? What about "Yielding" ? Is this controllable ? I don't want Robotask to swamp my CPU such that the order-entry program is missing price quotes !
High speed needed
Posted: Mon Aug 22, 2005 12:40 am
by Oleg
1) To grab the handles of several windows in this application
RoboTask can retrieve Window Caption, Window Class, and current handle of window. See window loop action. But RoboTask can't grab any other information from the window directly.
If your information is placed in some edit fields you can use system clipboard. For example: send keystroke, which allow you to select necessary field and emulate of pressing Ctrl-C combination (copy to clipboard). Next, you may use clipboard actions in order to put this information into variable or elsewhere.
2) Be able to get from a window either the stock price quotations in a continuous manner or every second and store as a variable in Robotask.
Of course, you can configure the cyclic triggering event on each second.
3) Have Robotask open a simple text-based file that has 3 columns:
stock symbol, Stop price, Buy/sell indicator
RoboTask can work with text files and comma-separated lines. See actions (text loop, delimited variable). "Delimited Variable" action allows you to normalize any delimited string and transform it to standard comma-separated string. If your variable contains standard comma-separated string, you can access to any column of this string so:
{MyUserVariable(0)}
{MyUserVariable(1)}
{MyUserVariable(2)} and so on.
...Because it is a REAL-TIME application, will I have problems of "cooperation" between Robotask and the order-entry platform ? What about "Yielding" ? Is this controllable ?...
Each task is executing in separated thread and not influences to other processes. You can launch only single instance of task. I.e. if you try to start the already launched task, this event will be ignored.
High speed needed
Posted: Mon Aug 22, 2005 5:48 am
by ahunkins
You can get the stock quotes from this web service.
http://evcook.com/evcook/samples/dotnet/quote.asmx
If you know C++, you can make a COM add-in for RoboTask to use from the
BASIC plug-in, or update the RoboTask variable directly through its own
COM API.
High speed needed
Posted: Mon Aug 22, 2005 7:04 am
by syswizard
re: "But RoboTask can't grab any other information from the window directly."
Thanks much Oleg, but the above "kills the entire project".
Grabbing the Window caption, class, handle is worthless unless I can use the handle to address the data present inside of the window. That was my expectation originally.
When you qualified the above with "directly".....is there any other INDIRECT methods other than cut-and-paste ?
High speed needed
Posted: Mon Aug 22, 2005 7:44 am
by ahunkins
It will be hard to even do cut and paste in less than a second.
You could use Download File in the Internet plug-in, download the web
page and then parse the html in the file to get your quote values.
Again, any INDIRECT method will be hard to do in less than a second, regardless of RoboTask or any other tool.