Also, I have a strategy that runs on the daily chart and adds Minute bars to execute the trades. I have looked at the documentation and think this is a valid Multi-Instrument strategy. Do you see anything glaringly wrong?
Thanks,
Erik
[FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]protected[/COLOR][/COLOR][COLOR=#0000ff][COLOR=#0000ff]override[/COLOR][/COLOR][COLOR=#0000ff][COLOR=#0000ff]void[/COLOR][/COLOR] Initialize() {[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]try[/COLOR][/COLOR] {[/SIZE][/FONT] [COLOR=#008000][FONT=Courier New][SIZE=1][COLOR=#008000]//TraceOrders = true;[/COLOR][/SIZE][/FONT] [/COLOR][FONT=Courier New][SIZE=1]Add([COLOR=#2b91af][COLOR=#2b91af]PeriodType[/COLOR][/COLOR].Minute, 5);[/SIZE][/FONT] [FONT=Courier New][SIZE=1]...[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (useDarkCloudCover == 1) Add(CandleStickPattern([COLOR=#2b91af][COLOR=#2b91af]ChartPattern[/COLOR][/COLOR].DarkCloudCover, swingStrength));[/SIZE][/FONT] [FONT=Courier New][SIZE=1]...[/SIZE][/FONT] [FONT=Courier New][SIZE=1]SetProfitTarget([COLOR=#a31515][COLOR=#a31515]""[/COLOR][/COLOR], [COLOR=#2b91af][COLOR=#2b91af]CalculationMode[/COLOR][/COLOR].Percent, profitTarget / 100);[/SIZE][/FONT] [FONT=Courier New][SIZE=1]SetStopLoss([COLOR=#a31515][COLOR=#a31515]""[/COLOR][/COLOR], [COLOR=#2b91af][COLOR=#2b91af]CalculationMode[/COLOR][/COLOR].Percent, stopLoss / 100, [COLOR=#0000ff][COLOR=#0000ff]true[/COLOR][/COLOR]);[/SIZE][/FONT] [FONT=Courier New][SIZE=1]IOrder1 = [COLOR=#0000ff][COLOR=#0000ff]null[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]triggerFired = [COLOR=#0000ff][COLOR=#0000ff]false[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]EntriesPerDirection = 1;[/SIZE][/FONT] [FONT=Courier New][SIZE=1]EntryHandling = [COLOR=#2b91af][COLOR=#2b91af]EntryHandling[/COLOR][/COLOR].UniqueEntries;[/SIZE][/FONT] [FONT=Courier New][SIZE=1]ExitOnClose = [COLOR=#0000ff][COLOR=#0000ff]false[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]TimeInForce = Cbi.[COLOR=#2b91af][COLOR=#2b91af]TimeInForce[/COLOR][/COLOR].Gtc;[/SIZE][/FONT] [FONT=Courier New][SIZE=1]CalculateOnBarClose = [COLOR=#0000ff][COLOR=#0000ff]true[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]catch[/COLOR][/COLOR] ([COLOR=#2b91af][COLOR=#2b91af]Exception[/COLOR][/COLOR] ex) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1]Print(ex.ToString());[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]throw[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [SIZE=1][FONT=Courier New][COLOR=#0000ff][COLOR=#0000ff]protected[/COLOR][/COLOR] [COLOR=#0000ff][COLOR=#0000ff]override[/COLOR][/COLOR] [COLOR=#0000ff][COLOR=#0000ff]void[/COLOR][/COLOR][/FONT][FONT=Courier New] OnBarUpdate() {[/FONT][/SIZE] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]try[/COLOR][/COLOR] {[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (BarsInProgress == 0) {[/SIZE][/FONT] [COLOR=#0000ff][FONT=Courier New][SIZE=1][COLOR=#0000ff]...[/COLOR][/SIZE][/FONT][/COLOR] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (useDarkCloudCover == 1 && CandleStickPattern([COLOR=#2b91af][COLOR=#2b91af]ChartPattern[/COLOR][/COLOR].DarkCloudCover, swingStrength).PatternFound[0] == 1) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1]triggerFired = [COLOR=#0000ff][COLOR=#0000ff]true[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]...[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (BarsInProgress == 1) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (triggerFired) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (ToTime(Time[0]) >= 63000 && ToTime(Time[0]) <= 83000) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1]IOrder1 = EnterShortLimit(BarsInProgress, [COLOR=#0000ff][COLOR=#0000ff]true[/COLOR][/COLOR], GetNumSharesToBuy(Close[0]), Close[0], [COLOR=#a31515][COLOR=#a31515]""[/COLOR][/COLOR]);[/SIZE][/FONT] [FONT=Courier New][SIZE=1]triggerFired = [COLOR=#0000ff][COLOR=#0000ff]false[/COLOR][/COLOR];[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1][COLOR=#0000ff][COLOR=#0000ff]if[/COLOR][/COLOR] (ToTime(Time[0]) > 125000) {[/SIZE][/FONT] [FONT=Courier New][SIZE=1]CancelOrders();[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [SIZE=1][FONT=Courier New][COLOR=#0000ff][COLOR=#0000ff]catch[/COLOR][/COLOR] ([COLOR=#2b91af][COLOR=#2b91af]Exception[/COLOR][/COLOR][/FONT][FONT=Courier New] ex) {[/FONT][/SIZE] [FONT=Courier New][SIZE=1]Print(ex.ToString());[/SIZE][/FONT] [SIZE=1][COLOR=#0000ff][FONT=Courier New][COLOR=#0000ff]throw[/COLOR][/FONT][/COLOR][FONT=Courier New];[/FONT][/SIZE] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT] [FONT=Courier New][SIZE=1]}[/SIZE][/FONT]
Comment