コーディングのヘルプ - ページ 678 1...671672673674675676677678679680681682683684685...786 新しいコメント simon_json 2016.09.17 12:50 #6771 mladen: サイモン条件はもっと洗練されるべきです。例えば:両方が同じシグナルを出しているときは非常に頻繁にあります。では、具体的にいつそうすればいいのでしょうか。それが最初に発生したとき?その都度ですか?また、どちらかが変わるたびに抜けるとなると、抜ける回数が非常に多くなってしまうので ご返信ありがとうございます。そうですね、これは良い戦略ではないかもしれません。ただ、これをテンプレートとして入手すれば、おそらく後で自分でいくつかの変更を行うことができます。私が欲しいのは、2つの指標を組み合わせる可能性(とそのバッファの使用)です。例えば、次のような戦略です:両方のインジケータが示すときに買う。そして、両方の指標を示したときに売る。それは、指標の変更と閉じたバーの後に発生する必要があります。それが発生するたびに起こるようにします。最高です。 andreatrade 2016.09.17 20:03 #6772 mladenさんへ。添付のインジケーターに問題があります。EA実行中にインディを適用した場合(MT4の標準移動平均)、値がEA実行終了時に同じインディケータを適用して表示される値と大きく異なっているのです。その理由と、もし実現可能であればインディを修正する方法を教えていただけませんか? ファイル: Strenght_USD.mq4 6 kb FxSteven 2016.09.17 20:04 #6773 mladen氏。私はmaリボンをmaチャネルに充填 するためのいくつかの変更を行っているが、私はバッファの問題があります。ヒストグラムの後ろにチャンネルを隠したり、チャンネルの間に空白を作ることができる方法はありますか?私はそれを空白にしようとしたが、片側にしかそれを行うことができます、それはもう一つのバッファを追加する必要があるのでしょうか?そして、もう一つの問題は、44行目にある、私はそれを外部または削除することはできません。 それは常にエラーが出ている。私にいくつかのアドバイスを与えてください、ありがとうございます。スティーブン。 ファイル: MA Channel ribbon filled.mq4 6 kb Mladen Rakic 2016.09.17 20:33 #6774 stevenpun: mladen氏。私はmaリボンをmaチャネルに充填 するためのいくつかの変更を行っているが、私はバッファの問題があります。ヒストグラムの後ろにチャンネルを隠したり、チャンネルの間に空白を作ることができる方法はありますか?私はそれを空白にしようとしたが、片側にしかそれを行うことができます、それはもう一つのバッファを追加する必要があるのでしょうか?そして、もう一つの問題は、44行目にある、私はそれを外部または削除することはできません。 それは常にエラーが出ている。私にいくつかのアドバイスを与えてください、ありがとうございます。スティーブン。 私はこれがあなたがやろうとしていることであるかどうかわからないが、試してみてください。 ファイル: MA Channel ribbon filled.mq4 6 kb FxSteven 2016.09.17 22:02 #6775 mladen:これがあなたがやろうとしていることなのかどうかわからないが、試してみてください。はい、まさに私が欲しいもの:Dしかし、あなたは私が行44 'AlertOnClosedCandle'のコードを確認 するために助けることができる、なぜそれがカント削除またはexternのboolのですか?これは、このタイプの問題を持っている私の最初の時間です。どのような方法で私はバッファにいくつかのことを学んでいる。ありがとうございます。 Fausto Nunziante Del Gaudio 2016.09.17 23:24 #6776 Mladenはあなたが修正した前のインジケータで私のカスタマイズを終えたところです。このコードのどこが問題なのでしょうか?何も表示されない...コンパイルしてもエラーにならない。#property version "1.00" #property strict #property indicator_chart_window #property indicator_buffers 4 #property indicator_color1 Gold #property indicator_color2 DodgerBlue #property indicator_color3 LimeGreen #property indicator_color4 Crimson #property indicator_width1 2 #property indicator_width2 2 #property indicator_width3 2 #property indicator_width4 2 extern string NOTE1 = "SELECT PARAMETERS OF THE INDICATOR"; //SPAN MA CROSS PARAMS extern int SpanPeriod = 1; // Period of Span extern int SpanShift = -26; // Shift of Span extern ENUM_MA_METHOD SpanMode = 1; // Mode of Span extern ENUM_APPLIED_PRICE SpanPrice = 0; // Applied price of Span extern int MaPeriod = 55; // Period of Moving average extern int MaShift = 0; // Shift of Moving average extern ENUM_MA_METHOD MaMode = 1; // Mode of Moving average extern ENUM_APPLIED_PRICE MaPrice = 0; // Applied price of Moving average extern string NOTE2 = "SELECT COLORS/STYLES OF THE INDICATOR"; //SPAN MA CROSS COLORS/STYLES extern color SpanClr = Gold; // Span color extern int SpanWdt = 2; // Span width extern ENUM_LINE_STYLE SpanStl = 0; // Span line style extern color MaClr = DodgerBlue; // Moving average color extern int MaWdt = 2; // Moving average width extern ENUM_LINE_STYLE MaStl = 0; // Moving average line style extern string NOTE3 = "SELECT PARAMETERS OF THE SIGNAL ARROWS"; //SPAN MA CROSS PARAMETERS OF THE SIGNAL ARROWS extern bool DrawArrows = true; // Draw signal arrows? extern bool DrawMaLines = true; // Draw lines? extern color UpArrowClr = LimeGreen; // Up arrow color extern int UpArrowWdt = 2; // Up arrow width extern color DnArrowClr = Crimson; // Down arrow color extern int DnArrowWdt = 2; // Down arrow width extern int ArrowsDistance = 10; // Arrows distance from candle extern string NOTE4 = "SELECT PARAMETERS OF THE ALERT"; //SPAN MA CROSS PARAMETERS OF THE ALERT extern bool AlertsOn = true; // Active alert? extern bool AlertsOnCurrent = true; // Alert on current unclosed bar extern bool AlertsMessage = true; // Alert message extern bool AlertsSound = true; // Alert sound extern bool AlertsEmail = false; // Alert e-mail extern string SoundFile = "alert2.wav"; // Filename of sound alert string IndicatorFileName; int WhichBar; double Gap; double SpanBuffer[]; // Buffer of the Span double MaBuffer[]; // Buffer of the Moving average double CrossUpBuffer[]; // Up arrow buffer double CrossDnBuffer[]; // Down arrow buffer double TrendBuffer[]; // Span/Ma cross buffer int init() { IndicatorFileName = WindowExpertName(); IndicatorBuffers(5); SetIndexBuffer(0, SpanBuffer); SetIndexBuffer(1, MaBuffer); SetIndexBuffer(2, CrossUpBuffer); SetIndexBuffer(3, CrossDnBuffer); SetIndexBuffer(4, TrendBuffer); if (DrawMaLines) { SetIndexStyle (0, DRAW_LINE, SpanStl, SpanWdt, SpanClr); SetIndexStyle (1, DRAW_LINE, MaStl, MaWdt, MaClr);} else { SetIndexStyle(0, DRAW_NONE); SetIndexStyle(1, DRAW_NONE);} if (DrawArrows) { SetIndexStyle (2, DRAW_ARROW, 0, UpArrowWdt, UpArrowClr); SetIndexArrow(0, 233); SetIndexStyle (3, DRAW_ARROW, 0, DnArrowWdt, DnArrowClr); SetIndexArrow(0, 234);} else { SetIndexStyle(2, DRAW_NONE); SetIndexStyle(3, DRAW_NONE);} return(0);} int deinit() { return(0); } int start() { int counted_bars = IndicatorCounted(); int i, limit; if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; limit = MathMin(Bars-counted_bars, Bars-1); for(i=limit; i>=0; i--){ SpanBuffer[i] = iMA(NULL, 0, SpanPeriod, SpanShift, SpanMode, SpanPrice, i); MaBuffer[i] = iMA(NULL, 0, MaPeriod, MaShift, MaMode, MaPrice, i); Gap = iATR(NULL,0,20,i); TrendBuffer[i] = TrendBuffer[i+1]; if (SpanBuffer[i] > MaBuffer[i]) TrendBuffer[i] = 1; if (SpanBuffer[i] < MaBuffer[i]) TrendBuffer[i] =-1; CrossUpBuffer[i] = EMPTY_VALUE; CrossDnBuffer[i] = EMPTY_VALUE; if (TrendBuffer[i]!= TrendBuffer[i+1]) if (TrendBuffer[i] == 1) CrossUpBuffer[i] = Low[i] - ArrowsDistance * Gap; else CrossDnBuffer[i] = High[i] + ArrowsDistance * Gap; } if (AlertsOn) { if (AlertsOnCurrent) WhichBar = 0; else WhichBar = 1; if (TrendBuffer[WhichBar] != TrendBuffer[WhichBar+1]) if (TrendBuffer[WhichBar] == 1) doAlert("uptrend"); else doAlert("downtrend"); } return(0); } // CUSTOM FUNCTIONS ------------------------- void doAlert(string doWhat) { static string previousAlert="nothing"; static datetime previousTime; string message; if (previousAlert != doWhat || previousTime != Time[0]) { previousAlert = doWhat; previousTime = Time[0]; message = StringConcatenate(Symbol()," at ",TimeToStr(TimeLocal(),TIME_SECONDS)," Span ma cross ", doWhat); if (AlertsMessage) Alert(message); if (AlertsEmail) SendMail(StringConcatenate(Symbol()," Span ma cross "), message); if (AlertsSound) PlaySound(SoundFile); } } Mladen Rakic 2016.09.18 06:02 #6777 thefxpros: Mladenはあなたが修正した前のインジケータで私のカスタマイズを終えたところです。このコードのどこが問題なのでしょうか?何も表示されない...コンパイルしてもエラーにならない。 thefxprosこのように試してみてください。 #property version "1.00" #property strict #property indicator_chart_window #property indicator_buffers 4 #property indicator_color1 Gold #property indicator_color2 DodgerBlue #property indicator_color3 LimeGreen #property indicator_color4 Crimson #property indicator_width1 2 #property indicator_width2 2 #property indicator_width3 2 #property indicator_width4 2 extern string NOTE1 = "SELECT PARAMETERS OF THE INDICATOR"; //SPAN MA CROSS PARAMS extern int SpanPeriod = 1; // Period of Span extern int SpanShift = -26; // Shift of Span extern ENUM_MA_METHOD SpanMode = 1; // Mode of Span extern ENUM_APPLIED_PRICE SpanPrice = 0; // Applied price of Span extern int MaPeriod = 55; // Period of Moving average extern int MaShift = 0; // Shift of Moving average extern ENUM_MA_METHOD MaMode = 1; // Mode of Moving average extern ENUM_APPLIED_PRICE MaPrice = 0; // Applied price of Moving average extern string NOTE2 = "SELECT COLORS/STYLES OF THE INDICATOR"; //SPAN MA CROSS COLORS/STYLES extern color SpanClr = Gold; // Span color extern int SpanWdt = 2; // Span width extern ENUM_LINE_STYLE SpanStl = 0; // Span line style extern color MaClr = DodgerBlue; // Moving average color extern int MaWdt = 2; // Moving average width extern ENUM_LINE_STYLE MaStl = 0; // Moving average line style extern string NOTE3 = "SELECT PARAMETERS OF THE SIGNAL ARROWS"; //SPAN MA CROSS PARAMETERS OF THE SIGNAL ARROWS extern bool DrawArrows = true; // Draw signal arrows? extern bool DrawMaLines = true; // Draw lines? extern color UpArrowClr = LimeGreen; // Up arrow color extern int UpArrowWdt = 2; // Up arrow width extern color DnArrowClr = Crimson; // Down arrow color extern int DnArrowWdt = 2; // Down arrow width extern int ArrowsDistance = 10; // Arrows distance from candle extern string NOTE4 = "SELECT PARAMETERS OF THE ALERT"; //SPAN MA CROSS PARAMETERS OF THE ALERT extern bool AlertsOn = true; // Active alert? extern bool AlertsOnCurrent = true; // Alert on current unclosed bar extern bool AlertsMessage = true; // Alert message extern bool AlertsSound = true; // Alert sound extern bool AlertsEmail = false; // Alert e-mail extern string SoundFile = "alert2.wav"; // Filename of sound alert string IndicatorFileName; int WhichBar; double Gap; double SpanBuffer[]; // Buffer of the Span double MaBuffer[]; // Buffer of the Moving average double CrossUpBuffer[]; // Up arrow buffer double CrossDnBuffer[]; // Down arrow buffer double TrendBuffer[]; // Span/Ma cross buffer int init() { IndicatorFileName = WindowExpertName(); IndicatorBuffers(5); SetIndexBuffer(0, SpanBuffer); SetIndexBuffer(1, MaBuffer); SetIndexBuffer(2, CrossUpBuffer); SetIndexBuffer(3, CrossDnBuffer); SetIndexBuffer(4, TrendBuffer); if (DrawMaLines) { SetIndexStyle (0, DRAW_LINE, SpanStl, SpanWdt, SpanClr); SetIndexStyle (1, DRAW_LINE, MaStl, MaWdt, MaClr);} else { SetIndexStyle(0, DRAW_NONE); SetIndexStyle(1, DRAW_NONE);} if (DrawArrows) { SetIndexStyle (2, DRAW_ARROW, 0, UpArrowWdt, UpArrowClr); SetIndexArrow(0, 233); SetIndexStyle (3, DRAW_ARROW, 0, DnArrowWdt, DnArrowClr); SetIndexArrow(0, 234);} else { SetIndexStyle(2, DRAW_NONE); SetIndexStyle(3, DRAW_NONE);} return(0);} int deinit() { return(0); } int start() { int counted_bars = IndicatorCounted(); int i, limit; if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; limit = MathMin(Bars-counted_bars, Bars-1); for(i=limit; i>=0; i--){ SpanBuffer[i] = iMA(NULL, 0, SpanPeriod, SpanShift, SpanMode, SpanPrice, i); MaBuffer[i] = iMA(NULL, 0, MaPeriod, MaShift, MaMode, MaPrice, i); Gap = iATR(NULL,0,20,i); if (i<Bars-1) TrendBuffer[i] = TrendBuffer[i+1]; if (SpanBuffer[i] > MaBuffer[i]) TrendBuffer[i] = 1; if (SpanBuffer[i] < MaBuffer[i]) TrendBuffer[i] =-1; CrossUpBuffer[i] = EMPTY_VALUE; CrossDnBuffer[i] = EMPTY_VALUE; if (i<Bars-1 && TrendBuffer[i]!= TrendBuffer[i+1]) if (TrendBuffer[i] == 1) CrossUpBuffer[i] = Low[i] - ArrowsDistance * Gap; else CrossDnBuffer[i] = High[i] + ArrowsDistance * Gap; } if (AlertsOn) { if (AlertsOnCurrent) WhichBar = 0; else WhichBar = 1; if (TrendBuffer[WhichBar] != TrendBuffer[WhichBar+1]) if (TrendBuffer[WhichBar] == 1) doAlert("uptrend"); else doAlert("downtrend"); } return(0); } // CUSTOM FUNCTIONS ------------------------- void doAlert(string doWhat) { static string previousAlert="nothing"; static datetime previousTime; string message; if (previousAlert != doWhat || previousTime != Time[0]) { previousAlert = doWhat; previousTime = Time[0]; message = StringConcatenate(Symbol()," at ",TimeToStr(TimeLocal(),TIME_SECONDS)," Span ma cross ", doWhat); if (AlertsMessage) Alert(message); if (AlertsEmail) SendMail(StringConcatenate(Symbol()," Span ma cross "), message); if (AlertsSound) PlaySound(SoundFile); } } andreatrade 2016.09.18 10:18 #6778 mladen: 訂正:sigmaの74行目と75行目をこのように変更してください。 to this :そして、それは動作するはずです。 もしくはstrictの記述を完全に削除する(strictで使うならそのインジケータは完全に書き直す必要があるため) mladenさんへ。両方の提案を試してみたのですが、うまくいかず、EAで実行すると以下の画像のようにindiが更新されないことに気づきました。修正できるはず?: ファイル: Sigma.mq4 5 kb Fausto Nunziante Del Gaudio 2016.09.18 12:17 #6779 mladen: テフプロスこのように試してみてください。 Mladenを試したところ、うまくいったようですが、ストラテジーテスターでは、更新されず、アラートもポップアップされません。 FxSteven 2016.09.18 16:10 #6780 こんにちは、Mladenさん。私は、価格がトレンドから反転したときにコメントを追加し、 "買いを待つ "と "売りを待つ "を持っていることを考えていました。新しい行を買いに追加することは問題ありませんが、それを販売に追加するとき、それが動作するようにすることはできません。私は何を変更する必要がありますか? string OPstr; color OPclr; if (buffer1[i+SignalCandle]>buffer5[i+SignalCandle]) { OPstr = "BUY"; OPclr = Green; } if (buffer1[i+SignalCandle]>buffer5[i+SignalCandle] && Bid < buffer1[i+SignalCandle] ) { OPstr = "WAIT FOR BUY"; OPclr = LimeGreen; } else if (buffer1[i+SignalCandle]<buffer6[i+SignalCandle] ) { OPstr = "SELL"; OPclr = Red; } if (buffer1[i+SignalCandle]<buffer6[i+SignalCandle] && Bid > buffer1[i+SignalCandle] ) { OPstr = "WAIT FOR SELL"; OPclr = OrangeRed; } else { OPstr = "NO TRADE"; OPclr = Yellow; } 1...671672673674675676677678679680681682683684685...786 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
サイモン
条件はもっと洗練されるべきです。例えば:両方が同じシグナルを出しているときは非常に頻繁にあります。では、具体的にいつそうすればいいのでしょうか。それが最初に発生したとき?その都度ですか?また、どちらかが変わるたびに抜けるとなると、抜ける回数が非常に多くなってしまうので
ご返信ありがとうございます。そうですね、これは良い戦略ではないかもしれません。ただ、これをテンプレートとして入手すれば、おそらく後で自分でいくつかの変更を行うことができます。私が欲しいのは、2つの指標を組み合わせる可能性(とそのバッファの使用)です。
例えば、次のような戦略です:両方のインジケータが示すときに買う。そして、両方の指標を示したときに売る。それは、指標の変更と閉じたバーの後に発生する必要があります。それが発生するたびに起こるようにします。
最高です。
mladenさんへ。
添付のインジケーターに問題があります。
EA実行中にインディを適用した場合(MT4の標準移動平均)、値がEA実行終了時に同じインディケータを適用して表示される値と大きく異なっているのです。
その理由と、もし実現可能であればインディを修正する方法を教えていただけませんか?
mladen氏。
私はmaリボンをmaチャネルに充填 するためのいくつかの変更を行っているが、私はバッファの問題があります。
ヒストグラムの後ろにチャンネルを隠したり、チャンネルの間に空白を作ることができる方法はありますか?
私はそれを空白にしようとしたが、片側にしかそれを行うことができます、それはもう一つのバッファを追加する必要があるのでしょうか?
そして、もう一つの問題は、44行目にある、私はそれを外部または削除することはできません。
それは常にエラーが出ている。
私にいくつかのアドバイスを与えてください、ありがとうございます。
スティーブン。
mladen氏。
私はmaリボンをmaチャネルに充填 するためのいくつかの変更を行っているが、私はバッファの問題があります。
ヒストグラムの後ろにチャンネルを隠したり、チャンネルの間に空白を作ることができる方法はありますか?
私はそれを空白にしようとしたが、片側にしかそれを行うことができます、それはもう一つのバッファを追加する必要があるのでしょうか?
そして、もう一つの問題は、44行目にある、私はそれを外部または削除することはできません。
それは常にエラーが出ている。
私にいくつかのアドバイスを与えてください、ありがとうございます。
スティーブン。
私はこれがあなたがやろうとしていることであるかどうかわからないが、試してみてください。
これがあなたがやろうとしていることなのかどうかわからないが、試してみてください。
はい、まさに私が欲しいもの:D
しかし、あなたは私が行44 'AlertOnClosedCandle'のコードを確認 するために助けることができる、なぜそれがカント削除またはexternのboolのですか?
これは、このタイプの問題を持っている私の最初の時間です。
どのような方法で私はバッファにいくつかのことを学んでいる。
ありがとうございます。
Mladenはあなたが修正した前のインジケータで私のカスタマイズを終えたところです。このコードのどこが問題なのでしょうか?何も表示されない...コンパイルしてもエラーにならない。
Mladenはあなたが修正した前のインジケータで私のカスタマイズを終えたところです。このコードのどこが問題なのでしょうか?何も表示されない...コンパイルしてもエラーにならない。
thefxpros
このように試してみてください。
訂正:
sigmaの74行目と75行目をこのように変更してください。
to this :
そして、それは動作するはずです。
もしくはstrictの記述を完全に削除する(strictで使うならそのインジケータは完全に書き直す必要があるため)
mladenさんへ。
両方の提案を試してみたのですが、うまくいかず、EAで実行すると以下の画像のようにindiが更新されないことに気づきました。
修正できるはず?
:
テフプロス
このように試してみてください。
こんにちは、Mladenさん。
私は、価格がトレンドから反転したときにコメントを追加し、 "買いを待つ "と "売りを待つ "を持っていることを考えていました。
新しい行を買いに追加することは問題ありませんが、それを販売に追加するとき、それが動作するようにすることはできません。
私は何を変更する必要がありますか?