*

一目均衡表(関数版)

公開日: : 最終更新日: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】IS White という EA(2) デモの結果

以前紹介した EA です。 Exness でデモを開始しましたが、あまりかんばしくない

記事を読む

【FX】Voorloper という EA(3) デモトレード5日目

「Voorloper という EA(2) 同時トレード数と通貨ペア数の変更」の続きです。 変更

記事を読む

ハトポッポ

”三菱東京UFJ銀行”をかたったメール詐欺

以下のようなフィッシング詐欺のメールが最近よく来ます。 ひっかからないようにご注意ください。

記事を読む

ブランド品を身に着けているヤツはクソ

Youtube チャンネルで、「歴史的偉人が現代人を論破するアニメ」というものがありまして、その第4

記事を読む

5時間でわかる!KOSEI式ネット株 デイトレ&スイング 必勝法 / 石田 高聖

5時間でわかる!KOSEI式ネット株 デイトレ&スイング 必勝法 石田

記事を読む

[FX] 2本の移動平均線を使ったシンプルな EA

あるブログの記事「移動平均線クロスでエントリーするEA(フリーEA)」を読んで、「よし久々に作ってみ

記事を読む

SBIホールディングス(8473)買いました

一昨日、日本の高配当株としてよく名前が挙がる SBIホールディングスの株を 100株式会社買いました

記事を読む

VQ を使ったシンプルな自動売買システム

VQ という摩訶不思議なインジケーターがあります。始値、終値、高値、安値のそれぞれの移動平均線を使っ

記事を読む

ふるさと納税4回め / 無洗米 大館市

以前の記事「ふるさと納税3回め / イチゴ 玄海町」でセキの切れた私はさらに続けて納税(寄付)す

記事を読む

Message

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

ChatGPT はじめてのプロンプトエンジニアリング / 本郷 喜千

< アマゾンで購入 ★★★☆☆(読みやすい) AI をチャット

Dynabook B55 i5-6200U 8GB+128GBSSD ノートパソコン

 >アマゾンの商品ページ 本日朝注文したら、夕方に届きました。

【AI】Nano Banana2 に無茶振り (2) ねぶた祭り

前回の続きで、以前からやってみたかったことを やってみた。 「青

【AI】Nano Banana2 に無茶振り

Gemini にビルトインされている Nano Banana2 という

GS日本株・プラス(通貨分散コース)の配当金額の決め方

毎月配当の投資信託である GS日本株・プラス(通貨分散コース)の配当金

→もっと見る

  • 2026年6月
    1234567
    891011121314
    15161718192021
    22232425262728
    2930  
  • アクセスカウンター
PAGE TOP ↑