*

一目均衡表(関数版)

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

###

関連記事

2023-06-02 ポートフォリオ改変

「2023-05-31 ポートフォリオ改変」の続きです。 私の保有している日本株は、

記事を読む

[FX] 4/20 おやトレンドが反転?

GBPUSD 1時間足です。 おや、先週来 続いていたトレンドが逆転しそうな気配。 雲は

記事を読む

ヴァリュー株ETF 投資

ヴァリュー株投資というのを昔からやってみたいと思っていました。 ヴァリュー株投資とは優良株

記事を読む

「投資塾」という Youtube で無料の投資セミナーがすごい

ゆうさん(投資アドバイザー)という方の「投資塾」という Youtube チャンネルが面白くて役に立ち

記事を読む

【FX】珍しい現象

デモ口座でフォワードテストをしている EA がいくつかありますが、そのうちの1つで珍しい現象に遭遇。

記事を読む

【FX】Best Scapler という EA(2)

以前の記事「【FX】Best Scapler という EA」の続きです。 Best Scapl

記事を読む

AIPI, CEPI, FEPI の利回りが過少評価されている件

ずっと前から AIPI, CEPI, FEPI などカバードコール商品の利回りが楽天証券では低めに表

記事を読む

2024-12-26 日本株投資

クリスマスは終わって、そろそろ年末も迫ってきました。 株式市場も閑散としてきましたね。 機関

記事を読む

日本高配当株ファンドの投資法

高配当株投資の魅力を教えてくれる本や Youtubeビデオはたくさんありますね。 高配当株とは配当

記事を読む

[FX] Tokyo Box(ロンドン・コーリング) の新作プログラム (5) 2週間めの実動結果

東京時間(夏時間では午前9時から午後3時まで)の高値を上に抜けたらブレイクで買い、低値を下に

記事を読む

Message

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

「ラボグロウン」ダイヤモンド

ラボグロウンダイヤモンド(Laboratory Grown Diamo

今年欧州の熱波がすごい

いまさらのネタで恐縮ですが、今年 2026年の夏に欧州を襲っている記録

ブレンド3 アイスブレンド 粉(240g×12セット)【小川珈琲 ブレンド3】

京都の小川珈琲さんのコクのある味わいのアイス専用ブレンド。

国芳の猫

歌川国芳(うたがわ くによし、1798–1861)は、江戸時代末期に活

板間クモ膜瘤

よく、クモ膜顆粒と混同されている板間クモ膜瘤についての話です。

→もっと見る

  • アクセスカウンター
PAGE TOP ↑