マルチタイムフレームのシフト
マルチタイムフレームのシフト
EAやインジケータの開発に上位足を取得することはよくあります。
上位足の確認で難しいのはSHIFTがずれることです。
図)1分足と5分足のシフト
SHIFT | |||||||
現在 | 1分前 | 2分前 | 3分前 | 4分前 | 5分前 | 6分前 | |
1分足 | 0 | 1 | 2 | 3 | 4 | 5 | 6 |
5分足 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
1分足から5分足のSHIFTを計算するには以下のような式になります。
M1Shiftは1分足のシフトです。
MathFloor(M1Shift/5)
MathFloor()は数字を切り捨てします。
floor()でも同じ意味になります。
また、iBarShift()を使用することもできます。
iBarShift(_Symbol,PERIOD_M5,Time[5])
MathFloor()で計算する場合現在の足と上位足の比を把握する必要がありますが、iBarShift()の場合必要な項目を入れるだけで簡便です。
3つ目のオプションにはTime[下位足のシフト]を入れてください。
1分足から5分足のRSIを取得するには以下のような式になります。
double RSI=iRSI(_Symbol,PERIOD_M5,14,PRICE_CLOSE,iBarShift(_Symbol,PERIOD_M5,Time[5]));
シフトの変換をマスターして正確な上位足の値を取得しましょう。
株式会社トリロジー
AMSER株式会社
林 貴晴
⇒ FEATご利用手順