一目均衡表(関数版)
公開日:
:
最終更新日:2015/02/20
マネー
MetaTrader4 に付属している一目均衡表のソースを見てみるとずいぶん複雑なので、関数を使って簡単に記述し直してみました。
書き換えたのはほとんど start 関数だけです(バッファ名も長いので変えましたけど)。
これをちょっと変えるとリアルタイム雲のフィルタが簡単に作れます。
プログラムソース
//+------------------------------------------------------------------+ //| 一目均衡表(関数版) yasciiIchimoku01.mq4 | //+------------------------------------------------------------------+ #property strict #property indicator_chart_window #property indicator_buffers 7 #property indicator_color1 Red // Tenkan-sen #property indicator_color2 Blue // Kijun-sen #property indicator_color3 SandyBrown // Up Kumo #property indicator_color4 Thistle // Down Kumo #property indicator_color5 Yellow // Chikou Span #property indicator_color6 SandyBrown // Up Kumo bounding line #property indicator_color7 Thistle // Down Kumo bounding line //--- input parameters input int InpTenkan=9; // Tenkan-sen input int InpKijun=26; // Kijun-sen input int InpSenkou=52; // Senkou Span B //--- buffers double tenkan[]; double kijun[]; double senkouA[]; double senkouB[]; double chikou[]; double senkouAL[]; double senkouBL[]; //--- int ExtBegin; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ void OnInit(void) { IndicatorDigits(Digits); //--- SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,tenkan); SetIndexDrawBegin(0,InpTenkan-1); SetIndexLabel(0,"Tenkan Sen"); //--- SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,kijun); SetIndexDrawBegin(1,InpKijun-1); SetIndexLabel(1,"Kijun Sen"); //--- ExtBegin = InpKijun; if(ExtBegin < InpTenkan) ExtBegin = InpTenkan; //--- SetIndexStyle(2,DRAW_HISTOGRAM,STYLE_DOT); SetIndexBuffer(2,senkouA); SetIndexDrawBegin(2,InpKijun+ExtBegin-1); SetIndexShift(2,InpKijun-1); SetIndexLabel(2,NULL); SetIndexStyle(5,DRAW_LINE,STYLE_DOT); SetIndexBuffer(5,senkouAL); SetIndexDrawBegin(5,InpKijun+ExtBegin-1); SetIndexShift(5,InpKijun-1); SetIndexLabel(5,"Senkou Span A"); //--- SetIndexStyle(3,DRAW_HISTOGRAM,STYLE_DOT); SetIndexBuffer(3,senkouB); SetIndexDrawBegin(3,InpKijun+InpSenkou-1); SetIndexShift(3,InpKijun-1); SetIndexLabel(3,NULL); SetIndexStyle(6,DRAW_LINE,STYLE_DOT); SetIndexBuffer(6,senkouBL); SetIndexDrawBegin(6,InpKijun+InpSenkou-1); SetIndexShift(6,InpKijun-1); SetIndexLabel(6,"Senkou Span B"); //--- SetIndexStyle(4,DRAW_LINE); SetIndexBuffer(4,chikou); SetIndexShift(4,1-InpKijun); SetIndexLabel(4,"Chikou Span"); //--- initialization done } //+------------------------------------------------------------------+ //| Ichimoku Kinko Hyo | //+------------------------------------------------------------------+ int start() { int limit = Bars - IndicatorCounted(); if(limit == Bars) limit -= InpKijun+InpSenkou-1; for (int i =limit -1; i>=0; i--) { tenkan[i] = (High[iHighest(NULL, 0, MODE_HIGH, InpTenkan, i)] + Low[iLowest(NULL, 0, MODE_LOW, InpTenkan, i)]) / 2.0 ; kijun[i] = (High[iHighest(NULL, 0, MODE_HIGH, InpKijun, i)] + Low[iLowest(NULL, 0, MODE_LOW, InpKijun, i)]) / 2.0 ; senkouA[i] = (High[iHighest(NULL, 0, MODE_HIGH, InpKijun, i)] + Low[iLowest(NULL, 0, MODE_LOW, InpKijun, i)] + High[iHighest(NULL, 0, MODE_HIGH, InpTenkan, i)] + Low[iLowest(NULL, 0, MODE_LOW, InpTenkan, i)]) / 4.0 ; senkouB[i] = (High[iHighest(NULL, 0, MODE_HIGH, InpSenkou, i)] + Low[iLowest(NULL, 0, MODE_LOW, InpSenkou, i)])/2.0 ; senkouAL[i] = senkouA[i] ; senkouBL[i] = senkouB[i] ; chikou[i] = Close[i]; } return(0); } //+------------------------------------------------------------------+
###
関連記事
-
-
簡単な平均足システム (2)
以前の記事「簡単な平均足システム」で作った簡単な平均足システムを改良してみました。 改良その1
-
-
【FX】ゴールドのトレード
金(ゴールド)の実物の売買は私も昔からやっておりますが、巷では最近は差金決済取引による売買のほうが盛
-
-
リアルタイムクラウドフィルタ
昨日の記事「一目均衡表(関数版)」で、リアルタイム雲(時間がずれていない雲)のフィルタを作る方法
-
-
【FX】2023年10月前半決算
FX の記事です。 以前の記事「2023年9月決算」で、2023年9月の 1ヶ月分の決算を出し
-
-
東京帝大教授が教えるお金・仕事に満足し、人の信頼を得る法 / 本多静六(2)
一昨日の記事「東京帝大教授が教えるお金・仕事に満足し、人の信頼を得る法 / 本多静六(1)」
-
-
[FX]yasciiHA04a 暴落対策変更
先週から実戦投入していた yasciiHA04a.ex4 ですが、今朝見ると 4233円の負けを発見
-
-
【FX】ボリンジャーバンドを逆張りで(2)
昨日の記事「【FX】ボリンジャーバンドを逆張りで」の続きです。 本日、バグをつぶして、少し改良
-
-
2020/10/28 アメリカ株3日連続の下げ
コロナがまたぶり返しているのと、大統領選直前ということでなのか、アメリカ株の「暴落」が3日連続してい
- PREV
- ふるさと納税初めてやってみた
- NEXT
- リアルタイムクラウドフィルタ