コーディングのヘルプ - ページ 10 1...34567891011121314151617...786 新しいコメント m1nicholas 2011.04.02 10:07 #91 RSIメールアラート こんにちは、プログラマー。 既存のアラートを補完するために電子メールアラートを追加することができれば、本当にありがたいです。RSIレベルが初めてヒットしたときに、現在の価格バーの間に1回だけメールを送信する必要があります(価格バーの間にジャンプアップとダウンした場合、私は電子メールに振り回されないように)。私はzilch mqlのプログラミングの知識を持っているので、任意のヘルプは素晴らしいことだ。 よろしくお願いします。 マルコム ファイル: rsi_alert.mq4 3 kb William Snyder 2011.04.02 10:49 #92 m1nich: こんにちは、プログラマ。既存のアラートを補完するために電子メールアラートを追加することができます誰かが本当に感謝しています。RSIレベルが初めてヒットしたときに、現在の価格バーの間に1回だけメールを送信する必要があります(価格バーの間にジャンプアップとダウンした場合、私は電子メールに振り回されないようにするために)。私はzilch mqlのプログラミングの知識を持っているので、任意のヘルプは素晴らしいことだ。 よろしくお願いします。 マルコム こんにちは、マルコムです。 ここを試してみてくださいhttps://www.mql5.com/en/forum/180648 投稿番号 2928 m1nicholas 2011.04.02 18:26 #93 RSIメールアラート MrToolsさん、こんにちは。 Wunderbar! 最高 derumuro 2011.04.08 12:11 #94 エラーが発生するインジケータ こんにちは、コーダーの皆さん。 このインジケータを見つけました。このインジケータは手動取引に適しています。このインジケータは、いくつかの注文の損益分岐点を表示します。残念なことに、このインジケータにはいくつかのエラーがあります。誰かがこれを修正することができますか? 新しい機能を追加しますか? 私は注文でtpまたはslを変更した場合、他の注文のslとtpが自動的に変更されます(e-MoveSLTPbyMouse.mq4のような)。 ありがとうございます。 英語が下手ですみません ファイル: breakeven-line_indi.mq4 10 kb e-movesltpbymouse.mq4 16 kb Arup Nag 2011.04.16 21:27 #95 rajivzzz: こんにちはEAにインジケータを作成する方法を知っている人はいますか?私はこのインジケータを持っていますが、私は毎回PCの前に座っていなかったので、出口、エントリー、利食いのために何回も良い位置を逃すことができます。 見る 赤い線 は良い売りポジション 緑のラインは 買いポジション テイクプロフィットのセンターライン Eur/Usdの1Hチャートで私のトレードのいくつかをピンクのラインで表示することができます、すべて利益で終了しました。 私はEAがこのように動作するようにしたい 赤線で販売、TPは中心線でヒットし、緑線で購入 TPは中心線でヒット。 こんにちは。 私はそれが可能であると私は助けることができると思います。EAをコーディングするには、特定の条件を満たす必要があります。さらなる議論のために私にPMを。 ありがとうございます。 rvvidhul 2011.04.17 08:45 #96 rvvidhul:これはHeikin AshiのピボットとNMAスイングシステムに基づいています。 このチャートのAflコードですが、どなたかこの数式をMetatraderのインジケータに変換していただけませんか? _SECTION_BEGIN("NMAスイングエクスプローラー"); SetBarsRequired(200,0); GraphXSpace = 5; SetChartOptions(0,chartShowArrows|chartShowDates); SetChartOptions(0,chartShowArrows|chartShowDates); k = Optimize("K",Param("K",2,0.25,5,0.25),0.25,5,0.25); Per= Optimize("atr",Param("atr",20,3,20,1),3,20,1); HACLOSE=(O+H+L+C)/4; HaOpen = AMA( Ref( HaClose, -1 ), 0.5 ); HaHigh = Max( H, Max( HaClose, HaOpen ) ); HaLow = Min( L, Min( HaClose, HaOpen ) ); if( ParamToggle("Plot Heikin-Ashi", "No,Yes", 1 ) ) PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "Heikin Ashi " + Name(), colorBlack, styleCandle ); さもなくば Plot( C, "通常のローソク足" + Name(), colorBlack, styleCandle ); j=Haclose; //================================================================================================================ //=========================Indicator================================================================================= f=ATR(15)です。 rfsctor = WMA(H-L, Per); revers = k * rfsctor; Trend = 1; NW[0] = 0; for(i = 1; i < BarCount; i++) { if(Trend == 1) { if(j < NW) { Trend = -1; NW = j + Revers; } さもなくば { Trend = 1 とする。 if((j - Revers) > NW) { NW = j - Revers; } さもなくば { NW = NW。 } } } if(Trend == -1) { if(j > NW) { トレンド = 1; NW = j - Revers; } さもなくば { Trend = -1 とする。 if((j + Revers) < NW) { NW = j + Revers; } さもなくば { NW = NW。 } } } } //===============system================ Plot(NW, "", IIf(Trend == 1, 27, 4), 4); 買い=カバー=クロス(j,nw); 売り=ショート=クロス(nw,j); SellPrice=ValueWhen(Sell,C,1)とします。 BuyPrice=ValueWhen(Buy,C,1)とします。 Long=Flip(Buy,Sell).Shrt=Flip(Buy,Sell)。 Shrt=Flip(Sell,Buy)です。 nmab= nw<haclose; nmas= nw>haclose; NMA_status= WriteIf(NMAB, "BUY MODE", WriteIf(NMAS, "SELL MODE", "NEUTRAL"))です。 NMAS_Col=IIf(NMAB, colorGreen, IIf(NMAS, colorRed, colorLightGrey)); Filter=1; AddColumn( NW, "SAR", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 ); AddColumn( C, "Close", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 ); AddTextColumn(NMA_status, "MODE", 1, colorWhite, NMAS_Col); AddColumn(C, "Close", 1.2 ); _section_end(); //=================TITLE=========================================================================================== _SECTION_BEGIN("タイトル"); if( Status("action") == actionIndicator ) ( Title = EncodeColor(colorWhite)+ "NICK MA Swing System" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) + " - " + Date() +" - "+"\n" +EncodeColor(colorRed) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+"Cl-"+C+"です。 「Cl-"+C+" "+"Vol="+ WriteVal(V)+"\n "+ エンコード色(colorLime) エンコード色(colorLime)+。 WriteIf (買い , " GO LONG / 逆転シグナル at "+C+" ",") + WriteIf (売り , " GO LONG / 逆転シグナル at "+C+" "," ) WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ",") +"\n "+EncodeColor(colorWhite)+ WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" "," ) WriteIf(売り , "最後の取引の合計損益Rs. "+(C-買い値)+","")+。 WriteIf(買い , "最後の取引の合計利益/損失Rs. "+(売り価格-C)+",",")+。 WriteIf(Long AND NOT Buy, "取引:ロング - 始値Rs.+(BuyPrice),") + WriteIf(Shrt AND NOT Buy, "取引:ロング - 始値Rs. WriteIf(Shrt AND NOT Sell, "Trade : Short - Entry price Rs. "+(SellPrice),"")+"\n "+. WriteIf(Long AND NOT Buy,"現在の損益 Rs. "+(C-BuyPrice)+","") + WriteIf(Shrt AND NOT Buy, "取引:ショート - エントリー価格 Rs. WriteIf(Shrt AND NOT Sell, "Current Profit/Loss Rs. "+(SellPrice-C)+",",")); PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-40); PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-50)。 PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-45)。 PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorRed, 0, H, Offset=40); PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorOrange, 0,H, Offset=50).のようになります。 PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-45).これは、SellとShapeDownArrowの組み合わせです。 _section_end(); Coding help コーディングの方法は? Can one help me dansmol 2011.04.20 00:50 #97 rajivzzz: これ以上共有しないリペイント ,LOL ホーリーグリアルのように動作する もし、それがどのように作られるかを知らなければ、あなたは私のために何もすることはできません。 なんて素敵でインテリジェントな男なんだ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Min Li 2011.04.24 12:58 #98 こんにちは、Laurusさん、バッファの順番を入れ替えるだけです。Mt4はバッファ3の上にバッファ2を表示し、バッファ1の上にバッファ2を表示する、といった具合です。 Laurus12 2011.04.24 13:25 #99 オブジェクトレイヤーのインジケータの順番 ヒストグラム付きの古典的なMACDを持っていますが、ヒストグラムはMACDとシグナルの線の前に描かれます。どなたか、ヒストグラムを後ろに設定する方法を教えていただけませんか?私はそれを理解しようとしましたが、成功しませんでした。 ありがとうございます。 Laurus //+---------------------------------------------------------------------------+ //| _MACD.mq4 |。 //| ヒストグラムを用いた古典的なMACD||||。 //+---------------------------------------------------------------------------+ //---- インジケータの設定 #property indicator_separate_window(インジケータ分離ウィンドウ #property indicator_buffers 3 (インジケーターバッファー3) #property indicator_color1 ブラック #property indicator_color2 赤色 #property indicator_color3 SteelBlue (スチールブルー) #property indicator_width1 1 #property indicator_width2 1 (プロパティインジケータ幅2) #property indicator_width3 2 (プロパティ インジケータ幅3) //---- インジケーターのパラメーター extern int FastEMA=12; extern int SlowEMA=26; extern int SignalEMA=9; extern int SlowEMA=26; extern int SignalEMA=9; //----インジケーターバッファ double MACD_Buffer[]; double SIGNAL_Buffer[]; double HISTOGRAM_Buffer[]; //+------------------------------------------------------------------+ //| カスタムインジケータ初期化関数 //+------------------------------------------------------------------+ int init() { //---- 描画設定 SetIndexStyle(0,DRAW_LINE)を設定します。 SetIndexStyle(1,DRAW_LINE)を設定します。 SetIndexStyle(2,DRAW_HISTOGRAM)を設定します。 SetIndexDrawBegin(1,SignalEMA)を設定します。 IndicatorDigits(Digits+1); //---- インジケータ・バッファのマッピング SetIndexBuffer(0,MACD_Buffer)を設定します。 SetIndexBuffer(1,SIGNAL_Buffer)を設定します。 SetIndexBuffer(2,HISTOGRAM_Buffer)を設定します。 //データウィンドウとインジケータサブウィンドウのラベルの名前 IndicatorShortName("_MACD ("+FastEMA+", "+SlowEMA+", "+SignalEMA+")") を設定します。 SetIndexLabel(0, "MACD")を設定します。 SetIndexLabel(1, "Signal"); SetIndexLabel(1, "Signal"); SetIndexLabel(2, "ヒストグラム"); //---- 初期化完了 return(0); } //+------------------------------------------------------------------+ //| 移動平均の収束・発散について //+------------------------------------------------------------------+ int start() { int i; int limit; int counted_bars = IndicatorCounted(); if(counted_bars < 0) return(-1); //---- エラーの可能性をチェックする。 if(counted_bars > 0) counted_bars--; //---- 最後にカウントされたバーが再カウントされます。 limit = Bars - counted_bars; //---- MACDラインを引く for(i=0; i<limit; i++) { //-- 現在のバーから最初のバーまでループさせる MACD_Buffer = iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i) - iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i) とします。 } //---- シグナルラインとヒストグラムを描画 for(i=0; i<limit; i++) { //-- 上記と同じループです。 SIGNAL_Buffer = iMAOnArray(MACD_Buffer,Bars,SignalEMA,0,MODE_EMA,i); HISTOGRAM_Buffer = MACD_Buffer - SIGNAL_Buffer; } //----完了 return(0); } //+-----------------------------------------------------------------+ Coding help コーディングのヘルプが必要 [警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 Laurus12 2011.04.24 13:40 #100 christinaLi: こんにちは、Laurusさん、バッファの順番を入れ替えるだけです。Mt4はバッファ3の上にバッファ2を表示し、バッファ1の上にバッファ2を表示します。 素晴らしいchristinaLi!お返事とご協力ありがとうございました。これで完了です。完璧に動作するようになりました。 万が一、ヒストグラムを後ろに表示させたい方がいらっしゃいましたら、ファイルを添付します。 - Laurus ファイル: _macd.mq4 3 kb 1...34567891011121314151617...786 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
RSIメールアラート
こんにちは、プログラマー。
既存のアラートを補完するために電子メールアラートを追加することができれば、本当にありがたいです。RSIレベルが初めてヒットしたときに、現在の価格バーの間に1回だけメールを送信する必要があります(価格バーの間にジャンプアップとダウンした場合、私は電子メールに振り回されないように)。私はzilch mqlのプログラミングの知識を持っているので、任意のヘルプは素晴らしいことだ。
よろしくお願いします。
マルコム
こんにちは、プログラマ。
既存のアラートを補完するために電子メールアラートを追加することができます誰かが本当に感謝しています。RSIレベルが初めてヒットしたときに、現在の価格バーの間に1回だけメールを送信する必要があります(価格バーの間にジャンプアップとダウンした場合、私は電子メールに振り回されないようにするために)。私はzilch mqlのプログラミングの知識を持っているので、任意のヘルプは素晴らしいことだ。
よろしくお願いします。
マルコムこんにちは、マルコムです。
ここを試してみてくださいhttps://www.mql5.com/en/forum/180648
投稿番号 2928
RSIメールアラート
MrToolsさん、こんにちは。
Wunderbar!
最高
エラーが発生するインジケータ
こんにちは、コーダーの皆さん。
このインジケータを見つけました。このインジケータは手動取引に適しています。このインジケータは、いくつかの注文の損益分岐点を表示します。残念なことに、このインジケータにはいくつかのエラーがあります。誰かがこれを修正することができますか?
新しい機能を追加しますか?
私は注文でtpまたはslを変更した場合、他の注文のslとtpが自動的に変更されます(e-MoveSLTPbyMouse.mq4のような)。
ありがとうございます。
英語が下手ですみません
こんにちは
EAにインジケータを作成する方法を知っている人はいますか?私はこのインジケータを持っていますが、私は毎回PCの前に座っていなかったので、出口、エントリー、利食いのために何回も良い位置を逃すことができます。
見る
赤い線 は良い売りポジション
緑のラインは 買いポジション
テイクプロフィットのセンターライン
Eur/Usdの1Hチャートで私のトレードのいくつかをピンクのラインで表示することができます、すべて利益で終了しました。
私はEAがこのように動作するようにしたい 赤線で販売、TPは中心線でヒットし、緑線で購入 TPは中心線でヒット。こんにちは。
私はそれが可能であると私は助けることができると思います。EAをコーディングするには、特定の条件を満たす必要があります。さらなる議論のために私にPMを。
ありがとうございます。
これはHeikin AshiのピボットとNMAスイングシステムに基づいています。
このチャートのAflコードですが、どなたかこの数式をMetatraderのインジケータに変換していただけませんか?
_SECTION_BEGIN("NMAスイングエクスプローラー");
SetBarsRequired(200,0);
GraphXSpace = 5;
SetChartOptions(0,chartShowArrows|chartShowDates); SetChartOptions(0,chartShowArrows|chartShowDates);
k = Optimize("K",Param("K",2,0.25,5,0.25),0.25,5,0.25);
Per= Optimize("atr",Param("atr",20,3,20,1),3,20,1);
HACLOSE=(O+H+L+C)/4;
HaOpen = AMA( Ref( HaClose, -1 ), 0.5 );
HaHigh = Max( H, Max( HaClose, HaOpen ) );
HaLow = Min( L, Min( HaClose, HaOpen ) );
if( ParamToggle("Plot Heikin-Ashi", "No,Yes", 1 ) )
PlotOHLC( HaOpen, HaHigh, HaLow, HaClose, "Heikin Ashi " + Name(), colorBlack, styleCandle );
さもなくば
Plot( C, "通常のローソク足" + Name(), colorBlack, styleCandle );
j=Haclose;
//================================================================================================================
//=========================Indicator=================================================================================
f=ATR(15)です。
rfsctor = WMA(H-L, Per);
revers = k * rfsctor;
Trend = 1;
NW[0] = 0;
for(i = 1; i < BarCount; i++)
{
if(Trend == 1)
{
if(j < NW)
{
Trend = -1;
NW = j + Revers;
}
さもなくば
{
Trend = 1 とする。
if((j - Revers) > NW)
{
NW = j - Revers;
}
さもなくば
{
NW = NW。
}
}
}
if(Trend == -1)
{
if(j > NW)
{
トレンド = 1;
NW = j - Revers;
}
さもなくば
{
Trend = -1 とする。
if((j + Revers) < NW)
{
NW = j + Revers;
}
さもなくば
{
NW = NW。
}
}
}
}
//===============system================
Plot(NW, "", IIf(Trend == 1, 27, 4), 4);
買い=カバー=クロス(j,nw);
売り=ショート=クロス(nw,j);
SellPrice=ValueWhen(Sell,C,1)とします。
BuyPrice=ValueWhen(Buy,C,1)とします。
Long=Flip(Buy,Sell).Shrt=Flip(Buy,Sell)。
Shrt=Flip(Sell,Buy)です。
nmab= nw<haclose;
nmas= nw>haclose;
NMA_status= WriteIf(NMAB, "BUY MODE", WriteIf(NMAS, "SELL MODE", "NEUTRAL"))です。
NMAS_Col=IIf(NMAB, colorGreen, IIf(NMAS, colorRed, colorLightGrey));
Filter=1;
AddColumn( NW, "SAR", 1.2 );
AddColumn( HACLOSE, "HA Close", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 );
AddColumn( C, "Close", 1.2 ); AddColumn( HACLOSE, "HA Close", 1.2 );
AddTextColumn(NMA_status, "MODE", 1, colorWhite, NMAS_Col); AddColumn(C, "Close", 1.2 );
_section_end();
//=================TITLE===========================================================================================
_SECTION_BEGIN("タイトル");
if( Status("action") == actionIndicator )
(
Title = EncodeColor(colorWhite)+ "NICK MA Swing System" + " - " + Name() + " - " + EncodeColor(colorRed)+ Interval(2) + EncodeColor(colorWhite) +
" - " + Date() +" - "+"\n" +EncodeColor(colorRed) +"Op-"+O+" "+"Hi-"+H+" "+"Lo-"+L+" "+"Cl-"+C+"です。
「Cl-"+C+" "+"Vol="+ WriteVal(V)+"\n "+ エンコード色(colorLime)
エンコード色(colorLime)+。
WriteIf (買い , " GO LONG / 逆転シグナル at "+C+" ",") + WriteIf (売り , " GO LONG / 逆転シグナル at "+C+" "," )
WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" ",") +"\n "+EncodeColor(colorWhite)+ WriteIf (Sell , " EXIT LONG / Reverse Signal at "+C+" "," )
WriteIf(売り , "最後の取引の合計損益Rs. "+(C-買い値)+","")+。
WriteIf(買い , "最後の取引の合計利益/損失Rs. "+(売り価格-C)+",",")+。
WriteIf(Long AND NOT Buy, "取引:ロング - 始値Rs.+(BuyPrice),") + WriteIf(Shrt AND NOT Buy, "取引:ロング - 始値Rs.
WriteIf(Shrt AND NOT Sell, "Trade : Short - Entry price Rs. "+(SellPrice),"")+"\n "+.
WriteIf(Long AND NOT Buy,"現在の損益 Rs. "+(C-BuyPrice)+","") + WriteIf(Shrt AND NOT Buy, "取引:ショート - エントリー価格 Rs.
WriteIf(Shrt AND NOT Sell, "Current Profit/Loss Rs. "+(SellPrice-C)+",","));
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorGreen, 0, L, Offset=-40);
PlotShapes(IIf(Buy, shapeSquare, shapeNone),colorLime, 0,L, Offset=-50)。
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorWhite, 0,L, Offset=-45)。
PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorRed, 0, H, Offset=40);
PlotShapes(IIf(Sell, shapeSquare, shapeNone),colorOrange, 0,H, Offset=50).のようになります。
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorWhite, 0,H, Offset=-45).これは、SellとShapeDownArrowの組み合わせです。
_section_end();
これ以上共有しない
リペイント ,LOL
ホーリーグリアルのように動作する
もし、それがどのように作られるかを知らなければ、あなたは私のために何もすることはできません。なんて素敵でインテリジェントな男なんだ!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
こんにちは、Laurusさん、バッファの順番を入れ替えるだけです。Mt4はバッファ3の上にバッファ2を表示し、バッファ1の上にバッファ2を表示する、といった具合です。
オブジェクトレイヤーのインジケータの順番
ヒストグラム付きの古典的なMACDを持っていますが、ヒストグラムはMACDとシグナルの線の前に描かれます。どなたか、ヒストグラムを後ろに設定する方法を教えていただけませんか?私はそれを理解しようとしましたが、成功しませんでした。
ありがとうございます。
Laurus
//+---------------------------------------------------------------------------+
//| _MACD.mq4 |。
//| ヒストグラムを用いた古典的なMACD||||。
//+---------------------------------------------------------------------------+
//---- インジケータの設定
#property indicator_separate_window(インジケータ分離ウィンドウ
#property indicator_buffers 3 (インジケーターバッファー3)
#property indicator_color1 ブラック
#property indicator_color2 赤色
#property indicator_color3 SteelBlue (スチールブルー)
#property indicator_width1 1
#property indicator_width2 1 (プロパティインジケータ幅2)
#property indicator_width3 2 (プロパティ インジケータ幅3)
//---- インジケーターのパラメーター
extern int FastEMA=12;
extern int SlowEMA=26;
extern int SignalEMA=9; extern int SlowEMA=26; extern int SignalEMA=9;
//----インジケーターバッファ
double MACD_Buffer[];
double SIGNAL_Buffer[];
double HISTOGRAM_Buffer[];
//+------------------------------------------------------------------+
//| カスタムインジケータ初期化関数
//+------------------------------------------------------------------+
int init() {
//---- 描画設定
SetIndexStyle(0,DRAW_LINE)を設定します。
SetIndexStyle(1,DRAW_LINE)を設定します。
SetIndexStyle(2,DRAW_HISTOGRAM)を設定します。
SetIndexDrawBegin(1,SignalEMA)を設定します。
IndicatorDigits(Digits+1);
//---- インジケータ・バッファのマッピング
SetIndexBuffer(0,MACD_Buffer)を設定します。
SetIndexBuffer(1,SIGNAL_Buffer)を設定します。
SetIndexBuffer(2,HISTOGRAM_Buffer)を設定します。
//データウィンドウとインジケータサブウィンドウのラベルの名前
IndicatorShortName("_MACD ("+FastEMA+", "+SlowEMA+", "+SignalEMA+")") を設定します。
SetIndexLabel(0, "MACD")を設定します。
SetIndexLabel(1, "Signal"); SetIndexLabel(1, "Signal");
SetIndexLabel(2, "ヒストグラム");
//---- 初期化完了
return(0);
}
//+------------------------------------------------------------------+
//| 移動平均の収束・発散について
//+------------------------------------------------------------------+
int start() {
int i;
int limit;
int counted_bars = IndicatorCounted();
if(counted_bars < 0) return(-1); //---- エラーの可能性をチェックする。
if(counted_bars > 0) counted_bars--; //---- 最後にカウントされたバーが再カウントされます。
limit = Bars - counted_bars;
//---- MACDラインを引く
for(i=0; i<limit; i++) { //-- 現在のバーから最初のバーまでループさせる
MACD_Buffer = iMA(NULL,0,FastEMA,0,MODE_EMA,PRICE_CLOSE,i) - iMA(NULL,0,SlowEMA,0,MODE_EMA,PRICE_CLOSE,i) とします。
}
//---- シグナルラインとヒストグラムを描画
for(i=0; i<limit; i++) { //-- 上記と同じループです。
SIGNAL_Buffer = iMAOnArray(MACD_Buffer,Bars,SignalEMA,0,MODE_EMA,i);
HISTOGRAM_Buffer = MACD_Buffer - SIGNAL_Buffer;
}
//----完了
return(0);
}
//+-----------------------------------------------------------------+
こんにちは、Laurusさん、バッファの順番を入れ替えるだけです。Mt4はバッファ3の上にバッファ2を表示し、バッファ1の上にバッファ2を表示します。
素晴らしいchristinaLi!お返事とご協力ありがとうございました。これで完了です。完璧に動作するようになりました。
万が一、ヒストグラムを後ろに表示させたい方がいらっしゃいましたら、ファイルを添付します。
- Laurus