Announcement
Collapse
No announcement yet.
Partner 728x90
Collapse
NinjaTrader
Order History for an Instrument in a Multi-Instrument Strategy
Collapse
X
-
Order History for an Instrument in a Multi-Instrument Strategy
I have a Multi Instrument Strategy. I am trying to retrieve if a instrument has traded today. If so was it a long or short. I have done little reading up on the TradeCollection. To get the Date I would need the Execution object. I am having a hard time coding this up. Is there code examples that I can look at?Tags: None
-
Hello [email protected], and thank you for your questions.
Attached is a code sample that accomplishes this goal. Code samples we provide are for educational purposes, and are not intended for live trading, and are not guaranteed to accomplish any user goal or to be maintained.I am trying to retrieve if a instrument has traded today
You can modify the code sample I presented using information about the Execution object from the help guide.If so was it a long or short
The TradeCollection available to your strategy will only contain all the trades placed by your strategy itself, not all the trades placed across strategies. This is why the sample code uses the Account object and checks its Executions instead. If you would like to check TradeCollection values, replace the execution you are looking at by Trade.Entry.I have done little reading up on the TradeCollection. To get the Date I would need the Execution object.
Our checking function in this case (in a strategy instead of an indicator like I have attached) would look like
Please let us know if there are any other ways we can help.Code:foreach(Trade Trade in SystemPerformance.AllTrades) { if (Trade.Entry.Instrument.FullName == InstrumentToCheck) { return true; } } return false;Attached FilesLast edited by NinjaTrader_JessicaP; 03-16-2017, 10:37 AM.Jessica P.NinjaTrader Customer Service
-
Thank your very much for your help. I still have the question on how to tell if the trade is one from today and if it is long or short trade.
IS this code anywhere close to what I would need?
bool LongTraded = false;
foreach(Trade Trade in SystemPerformance.AllTrades)
{
if (Trade.Entry.Instrument.FullName.CompareTo(BarsArray[BarsInProgress].Instrument)
&& Trade.Entry.Time.Date.CompareTo(ToDay)
&& Trade.Entry.Quantity > 0 )
{
LongTraded = true;
}
}
Comment
-
I want to reiterate that SystemPerformance.AllTrades only refers to trades your strategy has placed directly. With this in mind, you can see when a trade has been placed with Execution.Time. If you want to ensure a trade has been place today, you can use
Code:ToTime(Trade.Entry.Time) <= ToTime(Time[0]) && ToDay(Trade.Entry.Time) == ToDay(Time[0])
Jessica P.NinjaTrader Customer Service
Comment
-
-
Latest Posts
Collapse
| Topics | Statistics | Last Post | ||
|---|---|---|---|---|
|
Started by NullPointStrategies, Yesterday, 05:17 AM
|
0 responses
57 views
0 likes
|
Last Post
|
||
|
Started by argusthome, 03-08-2026, 10:06 AM
|
0 responses
133 views
0 likes
|
Last Post
by argusthome
03-08-2026, 10:06 AM
|
||
|
Started by NabilKhattabi, 03-06-2026, 11:18 AM
|
0 responses
73 views
0 likes
|
Last Post
|
||
|
Started by Deep42, 03-06-2026, 12:28 AM
|
0 responses
45 views
0 likes
|
Last Post
by Deep42
03-06-2026, 12:28 AM
|
||
|
Started by TheRealMorford, 03-05-2026, 06:15 PM
|
0 responses
50 views
0 likes
|
Last Post
|

Comment