*

一目均衡表(関数版)

公開日: : 最終更新日: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);
}
//+------------------------------------------------------------------+

###

関連記事

[FX] 15分足スキャルピング自動運転プログラム

最近は FX関係のブログをいろいろ読んでいます。 「MT5・MT4を使ってFX」というサイトで

記事を読む

OANDA のオープンオーダーとオープンポジションについて(1)

これが OANDA のオープンオーダーとオープンポジション。 全世界の3割近くの注文と保有

記事を読む

[FX] 2015/4/15 逆トレンドは一休み?

昨日の記事「2015/4/14 予想通り逆トレンドがキター?」で始まった逆トレンドは雲を抜け

記事を読む

FX先生 / 杉田 勝

FX先生杉田 勝 扶桑社 2009-05-15売り上げランキング : 60261

記事を読む

【FX】平均足と ADX とを使う順張り EA

Youtube に 平均足と ADX とを使う順張りの手法がありました。 まあ、誰でも思いつく

記事を読む

【FX】ThreeTrader の Rawゼロ口座を追加で開設(2)

前回の記事「ThreeTrader の Rawゼロ口座を追加で開設」の続きです。 * じ

記事を読む

【FX】ほぼストキャス単独での EA(2)

以前の記事「【FX】ほぼストキャス単独での EA」の続きです。 ストキャスティクスのパラメータ

記事を読む

FXトレード 2014/1/7

FXトレードの記録です。ようやく OANDA にリアル口座を開きました。早ければ来週あたりに実稼

記事を読む

今どきのソーラーシステム

本日、ラジオを聴いていたら辛坊治郎がこんなことを言っていました。 最近は200万円くらいで

記事を読む

地方自治法施行60周年記念貨幣 5百円バイカラー クラッド貨幣 平成21銘 4点セット 落札

昨日の記事「地方自治法施行60周年記念貨幣 5百円バイカラー・クラッド貨幣「奈良県」」の続きです。

記事を読む

Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

【FX】AXI Select インキュベーションステージ最初の報酬

ひさびさに プロップファームの AXI Select のお話です。

イシバの功績

高市総理がすごい成果を上げている。 マスコミはなぜトランプを非難

米国債20年超プレミアムインカムETF(453A)

また面白い高配当ETF を見つけました。米国債20年超プレミアムインカ

WCM 世界成長株厳選ファンド(予想分配金提示型)【愛称】ネクスト・ジェネレーション(2)

以前紹介した「WCM 世界成長株厳選ファンド(予想分配金提示型)【愛称

静かな森?

Stillwood という Youtube チャンネルがあります。>

→もっと見る

  • 2026年5月
     123
    45678910
    11121314151617
    18192021222324
    25262728293031
  • アクセスカウンター
PAGE TOP ↑