*

Chande’s Momentum Oscillator シャンデ・モメンタム・オシレーター

公開日: : マネー

シャンデモメンタムオシレーター(CMO と略される)という指標が本に載っていました。

アメリカの Tushar S. Chande が発表したようで、オシレーター系指標の一つです。

CMOの計算式は次のようになります。

CMO(N) = (CMO1 – CMO2) ÷ (CMO1 + CMO2) × 50 + 50

N = 指標の設定期間

CMO1 = N日間で前日比プラスとした日の値幅合計

CMO2 = N日間で前日比マイナスとした日の値幅合計

RSI(相対力指数)と似ています。

RSIと異なり、値幅を評価しているのでトレンドの強弱を知ることができるのが強みです。

ネットに転がっている CMO はシグナルのない1本線で、スケールも -100~100 とやや異なるので、改造してみました。

一番下のサブウィンドウが CMO です。一つ上は BBW ratio ですね。

CMO も 70 以上で買われすぎ、30以下で売られすぎ。

シグナルとクロスしたゴールデンクロス、デッドクロスは売買シグナルに使えます。

  • 70 以上でデッドクロスは売り
  • 30以下でゴールデンクロスは買い

 

です。

プログラムソース

//+------------------------------------------------------------------+
//|                          Chande's Momentum Oscillator  CMO_S.mq4 |
//+------------------------------------------------------------------+

#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Orange
#property indicator_color2 Violet
#property indicator_minimum 0
#property indicator_maximum 100
#property indicator_level1   50

//---- input parameters
extern bool LastBarOnly = false;
extern int  CMO_Range   = 20;
extern int  Sig_Period =9;
//---- buffers
double CMO_Buffer[];
double CMO_signal[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
 {
//---- indicators
  IndicatorBuffers(2);
  IndicatorShortName("Chande`s Momentum Oscillator (" + CMO_Range + ")");
  SetLevelStyle(STYLE_DASHDOT, 1, DodgerBlue);
  SetIndexStyle(0, DRAW_LINE);
  SetIndexLabel(0, "CMO");
  SetIndexBuffer(0, CMO_Buffer);
  SetIndexDrawBegin(0, CMO_Range);
  SetIndexBuffer(1, CMO_signal);
  SetIndexDrawBegin(1, CMO_Range);
  SetIndexStyle(1, DRAW_LINE);

 //----
  return(0);
 }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
 {
 //----
  return(0);
 }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int counted_bars = IndicatorCounted();
   int i, j, Limit, cnt_bars;
   double dif_close, cmo_up, cmo_dw;
   static bool run_once;
   if(counted_bars < 0)
     {
       return(-1);
     }
   Limit = Bars - counted_bars;
// run once on start
   if(run_once == false)
       cnt_bars = Limit - CMO_Range;
   else
      if(LastBarOnly == false)
          cnt_bars = Limit;
      else
          cnt_bars = 0;
//----
   for(i = cnt_bars; i >= 0; i--)
     {
       cmo_up = 0.0;
       cmo_dw = 0.0;
       //----
       for(j = i + CMO_Range - 1; j >= i; j--)
         {
           dif_close = Close[j] - Close[j+1];
           if(dif_close > 0)
               cmo_up += dif_close;
           else
               if(dif_close < 0)
                   cmo_dw -= dif_close;
         }
       CMO_Buffer[i] = 50.0 +50.0 * (cmo_up - cmo_dw) / (cmo_up + cmo_dw);
     }
   for (i=cnt_bars - Sig_Period; i>=0; i--)
      {
         CMO_signal[i] = iMAOnArray(CMO_Buffer,0,Sig_Period,0,MODE_EMA,i);

      }
//----
   if(run_once == false)
       run_once = true;
//----
   return(0);
  }

###

関連記事

【FX】Silent Falcon という EA

本日見つけた FX 自動売買ソフト(EA)です。 私のいうバースト系(急激な価格変動をトリガー

記事を読む

[FX] Waddah_Attar_Explosion を自動売買プログラム化 (2) ysWA01b.ex4

以前の記事「Waddah_Attar_Explosion を自動売買プログラム化」を改良しました。

記事を読む

GS 日本株・プラス(通貨分散コース)の今月の配当

日本の投資信託の GS 日本株・プラス(通貨分散コース)の今月の配当金が出ました。 配当と書いてい

記事を読む

ふるさと納税5回め / 牛肉 和木町(2)

以前の記事「ふるさと納税5回め / 牛肉 和木町」で書いた牛肉が届きました。 クレジットカード

記事を読む

金持ち父さんの考え方

ロバート・キヨサキの「金持ち父さん 貧乏父さん」 ★★★☆☆ ロバート・キヨサキの「金持

記事を読む

本日アメリカの社債を売りました

本日アメリカの社債を全部売りました(先日は米国債を全部売りました)。 今月8日の利払日が過ぎた

記事を読む

ブランド品は いらんど

私はファッションブランドが嫌いです。 以前にも書いたと思いますが、製品にそれほどの値打ちを感じ

記事を読む

【FX】BKK という朝スキャEA

しばらく FXブローカーからのメール(Daily Confirmation)が届かなくなっていたので

記事を読む

FX 裁量トレード 現在の方法 (3)

現在の裁量トレード画面がこちら(↑ クリックすれば拡大)。 前回と少し異なり、現在は

記事を読む

[FX]前週の平均値と順張り&逆張り EA化(3) 半自動のススメ

前回の記事「前週の平均値と順張り&逆張り EA化(2)」でお披露目したプログラムをお昼にサーバー

記事を読む

Message

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

次世代通信関連 世界株式戦略ファンド(予想分配金提示型) 8月の配当

毎月配当の超高配当ファンド「次世代通信関連 世界株式戦略ファンド(予想

私の遠隔画像診断(2)

昨日の記事「私の遠隔画像診断」の続きです。 会社請けの医療施

私の遠隔画像診断

現在遠隔画像診断に従事して 36年くらいになります。 最初は

【AI】Lilys問題点 PDF出力時の文字化け

Lilys は優秀な要約アプリですが、最終出力を PDF 出力するとき

2026/8/6 びわ湖花火大会

本日は大津港での花火大会。 「琵琶湖花火大会」というと通常はこれを指

→もっと見る

  • 2026年8月
     12
    3456789
    10111213141516
    17181920212223
    24252627282930
    31  
  • アクセスカウンター
PAGE TOP ↑