今回は前回作った板チャート(ITA_AVG)でストラテジーを組んでみます。
ロジックは移動平均線大循環分析でストラテジーを組んだ時とほぼ一緒です。
関数ITA_AVGが必要です。
tsukinowakabu.hatenablog.jp
[Intrabarordergeneration = true]; inputs: ShortAvg(5), MidAvg(25), LongAvg(50), Geta(10); vars: IntrabarPersist Answer(0), IntrabarPersist AnswerMid(0), IntrabarPersist AnswerSlow(0), IntrabarPersist UpFlg(0), IntrabarPersist DownFlg(0); Answer = ITA_AVG(ShortAvg); AnswerMid = ITA_AVG(MidAvg); AnswerSlow = ITA_AVG(LongAvg); UpFlg = 0; IF Answer > AnswerMid + Geta and AnswerMid > AnswerSlow and Answer > Answer[1] and AnswerMid > AnswerMid[1] and AnswerSlow > AnswerSlow[1] then UpFlg = 1; DownFlg = 0; if Answer < AnswerMid - Geta and AnswerMid < AnswerSlow and Answer < Answer[1] and AnswerMid < AnswerMid[1] and AnswerSlow < AnswerSlow[1] then DownFlg = 1; If MarketPosition = 0 and ((0900 < TIME and TIME < 1120) or (1230 < TIME and TIME < 1450)) then begin IF UpFlg = 1 then BEGIN Print(GetSymbolName, "買い", TIME); Buy ( !( "買い" ) ) next bar at market; end; IF DownFlg = 1 then BEGIN Print(GetSymbolName, "空売り", TIME); Sellshort ( !( "空売り" ) ) next bar at market; end; end; IF MarketPosition = 1 then BEGIN IF Answer < AnswerMid and Answer < Answer[1] and AnswerMid < AnswerMid[1] then BEGIN Print(GetSymbolName, "売り抜け", TIME); Sell ( !( "売り抜け" ) ) next bar at market; end; end; IF MarketPosition = -1 then BEGIN IF Answer > AnswerMid and Answer > Answer[1] and AnswerMid > AnswerMid[1] then BEGIN Print(GetSymbolName, "買い戻し", TIME); BuyToCover ( !( "買い戻し" ) ) next bar at market; end; end; if TIME >= 1125 and TIME < 1130 then Begin if MarketPosition = 1 then BEGIN Print(GetSymbolName, "指定時間売り抜け(午前)", TIME); Sell ( "指定時間売り抜け(午前)" ) next bar at market; end; if MarketPosition = -1 then BEGIN Print(GetSymbolName, "指定時間買い戻し(午前)", TIME); BuyToCover ( "指定時間買い戻し(午前)" ) next bar at market; end; End; if TIME >= 1455 then Begin if MarketPosition = 1 then BEGIN Print(GetSymbolName, "指定時間売り抜け(午後)", TIME); Sell ( "指定時間売り抜け(午後)" ) next bar at market; end; if MarketPosition = -1 then BEGIN Print(GetSymbolName, "指定時間買い戻し(午後)", TIME); BuyToCover ( "指定時間買い戻し(午後)" ) next bar at market; end; End;
スキャルピングなのでチャート分析の足種設定を1ティックにします。
(それ以外の設定でも使えないこともないですが)