一目均衡表(関数版)
公開日:
:
最終更新日: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);
}
//+------------------------------------------------------------------+
###
関連記事
-
-
楽天SCHD順調(筋書き通り?)
https://www.youtube.com/watch?v=o9VL4usNLVk 通称「
-
-
HiLo-Activator-Profi という MT4用インジケーター:色の変更
HiLo-Activator-Profi という MT4用インジケーターがあります。 ここから
-
-
12億円当たれば年4000万円遣っても30年
昨日夕食を外食で済ませたのち、施設内の宝くじ売り場の前を通りかかりました。 「12億円当たれば
-
-
[FX] 15分足スキャルピング自動運転プログラム
最近は FX関係のブログをいろいろ読んでいます。 「MT5・MT4を使ってFX」というサイトで
-
-
【FX】 Price Action Scalping という EA
またまた面白い自動売買ソフト(EA)を見つけました。Price Action Scalping とい
-
-
【FX】ECMarkets リアル口座 2つ目運用開始
海外 FX 業者 ECMarkets(ECM)の話です。 TariTali 経由で口座を開きま
-
-
株が上がっても下がってもしっかり稼ぐ投資のルール―バイ・アンド・ホールドを超えて / 太田 忠
株が上がっても下がってもしっかり稼ぐ投資のルール―バイ・アンド・ホールドを超
-
-
【FX】ThreeTrader の Rawゼロ口座を追加で開設
新たな FX口座を開設しようと、候補として TradersTrust という業者を調べていたものの、
-
-
外国為替トレード 勝利の方程式 (投資を極める! 本当は教えたくないプロのノウハウ) / 今井雅人
外国為替トレード 勝利の方程式 (投資を極める! 本当は教えたくないプロのノウハ
-
-
[FX] Tokyo Box(ロンドン・コーリング)プログラム改良
以前の記事「 Tokyo Box(ロンドン・コーリング)プログラム完成」の続きです。 リアル口
- PREV
- ふるさと納税初めてやってみた
- NEXT
- リアルタイムクラウドフィルタ






