*

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);
  }

###

関連記事

投資における AI の利用 分析

投資商品が増えてくると管理がめんどくさいですよね。 楽天証券から今年の配当金データを CSV

記事を読む

【FX】Yetti という EA

またまた FX の話です。 Yetti(イエティ)という自動売買プログラムがあります。

記事を読む

[FX] ノントレンドを省くフィルタ2種

トレンドフォロワー型の自動売買プログラムを使用する場合は、いかにノントレンドのときに暴発させないかと

記事を読む

【FX】FX 自動売買再運転開始

最近は毎日いくつか自動売買プログラム(Expert Advisor;EA)を作っています。 米

記事を読む

【FX】Fintokei 速攻プロプランについて

またまたプロップファームの Fintokei の話ですが、現在チャレンジプランを再開したところです。

記事を読む

超シンプルな自動売買プログラム(4) MACD&RSI

稼ぐ人のFX 儲けの流儀 (超トリセツ) バウンド インターナショナル・ラグジュ

記事を読む

【ヤフオク】バチカン市国銀貨 レオ12世

ヤフオクで落札(170円+送料)したバチカン市国発行の銀貨(1825年?)です。 レオ12世の

記事を読む

ふるさと納税2回め / 液晶ディスプレィ XU2390HS-B1

前回の記事「ふるさと納税のお礼のパソコンがやってきた」でご紹介しましたが、長野県飯山市にふるさと

記事を読む

【FX】朝スキャ(2)

前回の記事「【FX】朝スキャ」の続きです。 早朝スキャルピング(朝スキャ)は、日本の朝6時ごろ

記事を読む

スローな TII にしてくれ

TII をさらに使いやすくする方法を考えました。 下のチャートのサブウィンドウに3種類の TI

記事を読む

Message

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

290点以上のバンクシーのウォールアートプリントセット

290点以上のバンクシーのウォールアートプリントセット を Etsy.

外来種のカニ対策にタコを持ち込んだイタリア人の末路

https://www.youtube.com/watch?v=nCO

20万点以上のデジタルウォールアートバンドル(2)

「20万点以上のデジタルウォールアートバンドル」という Etsy.co

300点以上の日本の壁掛けアート

Etsy.com で「300点以上の日本の壁掛けアート」と称した作品集

【AI】Gemini 3.8Flash 登場

Gemini 3.8 Flash を Google DeepMindが

→もっと見る

  • 2026年9月
     123456
    78910111213
    14151617181920
    21222324252627
    282930  
  • アクセスカウンター
PAGE TOP ↑