*

一目均衡表(関数版)

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

###

関連記事

ふるさと納税初めてやってみた

住民税だけでも毎月20万円以上払っていますが、大津市はなんの見返りもくれません。 それどころか

記事を読む

【FX】グリッドトレード(グリッド戦略)

グリッドトレード(グリッド戦略)とは株や外為で昔からよくある方法で、相場に対し等間隔の値幅で複数のポ

記事を読む

【FX】TMMS というインジケーター

Youtube を観ていると、TMMS というインジケーターが紹介されていました。 TMMS

記事を読む

マーフィーのスパンモデルについて

マーフィーの最強スパンモデルFX投資法 柾木 利彦 日本実業出版社 2010

記事を読む

[FX] Rose Pound という自動売買ソフト

昨日の記事「 2021年6月第3週の成績」で紹介した市販の自動売買プログラムのうち、ポンド円を扱った

記事を読む

[FX] ルックバックRSI 戦略

「勝ってる人はここが違う!! FXで儲ける21の差」という上の本に書いてあった「ルックバック

記事を読む

【FX】XM 極口座 発進

以前の記事「XM で極口座を開いてみる」で書いたとおり、有名(悪名高い?)な XM でスプレッドの最

記事を読む

【FX】Alpinist という EA(2)

以前の記事「【FX】Alpinist という EA」の続きです。 Alpinist という面白

記事を読む

アンディさんのリアルタイム雲

  上が一目均衡表で、雲は26本先行しています。 下は有名なト

記事を読む

医療費39兆2千億円 過去最高

医療費高騰 厚生労働省は8日、2012年度に病気やけがの治療で全国の医療機関に支払われた医

記事を読む

Message

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

味のマルタイ 棒ラーメン 5種食べ比べ詰め合わせセット

最近、Youtube でよく見かける九州のマルタイという会社の棒ラーメ

男は孤独

本日、Youtube で女から男に性転換した外国人が「男がこんなに孤独

BMW 318i セダン M Sport 初乗り

一昨日わが家にやってきたこの車 BMW 318i セダン M Sp

ファミマ 果汁100%アップル 1000ml

あまりに暑いので、出勤途中のファミマで 100%アップルジュー

BMW 318i セダン M Sport 納車

以前の記事「 BMW 318i セダン M Sport 」の続

→もっと見る

  • 2025年7月
     123456
    78910111213
    14151617181920
    21222324252627
    28293031  
  • アクセスカウンター
PAGE TOP ↑