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); }
###
関連記事
-
-
仮想通貨はブロックチェーンを使っているから価値がある?
「仮想通貨はブロックチェーンを使っているから価値がある」とか言う人を TV でも見ます。 おかしい
-
-
[FX] 平均足を使った自動売買プログラム
平均足のメリット・デメリット 株やFX のチャートで価格の推移を表す ローソク足は有名ですが、同じ
-
-
[FX] 4TFStochBars というインジケータ
4TFStochBars.mq4 というストキャスティクスを4つの時間足でバー表示するインジケータが
-
-
【FX】MT4 build1420 の不具合
我々が普通に使っている FX のチャートソフト兼トレードシステムである MetaTrader4(MT
-
-
【FX】平滑化 RSI を使った簡単な EA(2)
「【FX】平滑化 RSI を使った簡単な EA」の続きです。 RSIMA(アールシーマ)と呼んでい
-
-
2021/1/28アメリカ株値下がり
昨日のニュースで、アメリカ株が 2%程度下げていました。 円高ではなく円安気味に動いているので
-
-
[FX] ハル平均線システム+フィボナッチ・トレーリングストップ
前回の記事「フィボナッチ・トレーリングストップ(初期型)」で発表した機能を ハル平均線システムに
-
-
MACDバーシステムの改良(3) あれれまさかの結末?
残念なお知らせ 昨日紹介したシステムですが、本日チェックしたところ、どうも残念な結果が。 ど
-
-
【FX】2023年11月第1週中間決算
2023年11月の第1週、というか本日は水曜日なので週区切りは無視して 7日間がすぎました。
-
-
ジュニアNISAで教育資金?
ジュニアNISA という制度があります。 ようは 国はあなたたちの子供の養育費は出せないから親
- PREV
- Seagate HDD また一位
- NEXT
- 2015年2月アメリカ雇用統計