コーディングの方法は? - ページ 269

 

DEMA変数が正しく設定されていない

DEMA変数のセクション、その構文が正しく設定できません。DEMA1,DEMA2,DEMA3コードは正しいです。

DEMA Variableセクションの修正にご協力ください。

if (TradeOrAlert)の場合{。

if (DEMA1)>(DEMA2) {CLOSESHORT(Symbol()) ;}.

if (DEMA1)<(DEMA2) {CLOSELONG(Symbol()) ;} もし (DEMA1)<(DEMA2) {CLOSELONG(Symbol()) ;} ならば

if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3)) {BUY(Symbol(), B_Symbol_LS_0, B_Symbol_TP_0, B_Symbol_SL_0, B_Symbol_TS_0, "if (DEMA1)>(DEMA2) && ((DEMA2)>(DEMA3))";} {BUY((DEMA2)) && (DEMA1)>(DEMA1)); } {BUY(B_Symbol_TS_0); "if ((DEMA2)) > (DEMA2) && (B_Symbol(DEMA3))

if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3)) {SELL(Symbol(), S_Symbol_LS_0, S_Symbol_TP_0, S_Symbol_SL_0, S_Symbol_TS_0, "if (DEMA1)<(DEMA2) && (DEMA2)<(DEMA3)";} {SEMA1(DEMA2)未満, SEMA3(DEMA3)未満, "If (DEMA2)未満";}{SEMA2(Symbol_TP_0)以上

CheckTrailingStop(Symbol(), 0, MagicNumberLong, B_Symbol_TS_0);

CheckTrailingStop(Symbol(), 1, MagicNumberShort, S_Symbol_TS_0);

} else {

if (DEMA1)>(DEMA2) {MyAlert("if (DEMA1)>(DEMA2)", "CLOSESHORT(Symbol(),0.1,100,15,17)", Symbol());} }MyAlert("If (DEMA1)>(DEMA2)", "CLOSESHORT(Symbol(),0.1,100,15,17)")

if (DEMA1)<(DEMA2) {MyAlert("if (DEMA1)<(DEMA2)", "CLOSELONG(Symbol(),0.1,100,15,17)", Symbol());}; } {MyAlert("if (DEMA1)<(DEMA2)", "CLOSELONG(Symbol(),0.1,100,15,17)", Symbol())

if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3)) {MyAlert("if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3))", "BUY(Symbol(),0.1,100,15,17)", Symbol()); } {MyAlert("If (DEMA2)>(DEMA3))"), "DEMA1,100,15,17",Symbol(); } {MyAlert("DEMA1,100, 0.1,100, 0.1,15,17")

if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3)) {MyAlert("if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3))", "SELL(Symbol(),0.1,100,15,17)", Symbol()); } {MyAlert("SEMA1), 0.1,100,16,17", Symbol()

}

g_bars_276 = Bars;

return (0);

}

//----DEMA VARIABLES-----正しく設定されていません、助けが必要です-----。

int init() {

double DEMA1 = (iMA(NULL,NULL,4,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,4,0,MODE_EMA,iMA(NULL,NULL,4,0,MODE_EMA,PRICE_CLOSE,0),0)));

return(DEMA1);

}

int start() {

double DEMA2 = (iMA(NULL,NULL,6,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,6,0,MODE_EMA,iMA(NULL,NULL,6,0,MODE_EMA,PRICE_CLOSE,0),0))).DEMA2 = (NULL.NULL.NULL.6,0,MODE_EMA(PRICE,CLOSE)0,MODE_EMA(6,0,MODE_EMA,PRICE_CLOSE,0));

return(DEMA2);

}

int start() {

double DEMA3 = (iMA(NULL,NULL,12,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,12,0,MODE_EMA,iMA(NULL,NULL,12,0,MODE_EMA,PRICE_CLOSE,0),0))).DEMA2 = (NULL.NULL.NULL.NULL.N.M.M.M.,MODE_EMA,PRICE_CLOSE,0));

return(DEMA3);

}

//

 

デマ変数が正しく設定されない

以下のコードの「DEMA VARIABLES」セクションに正しくシンタックスを設定することができないという問題に直面しています。

また、DEMA変数に関して、"#include "セクションの後に何を含めるべきかを教えてください。

次のようなエラーが発生します。

'DEMA1' - 変数が定義されていません。

DEMA2' - 変数が定義されていません。

DEMA3' - 変数が定義されていません。

助けてください。

if (TradeOrAlert) {

if (DEMA1)>(DEMA2) {CLOSESHORT(Symbol()) ;}.

if (DEMA1)<(DEMA2) {CLOSELONG(Symbol()) ;} もし (DEMA1)<(DEMA2) {CLOSELONG(Symbol()) ;}.

if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3)) {BUY(Symbol(), B_Symbol_LS_0, B_Symbol_TP_0, B_Symbol_SL_0, B_Symbol_TS_0, "if (DEMA1)>(DEMA2) && ((DEMA2)>(DEMA3))";} {BUY((DEMA2)) && (DEMA1)>(DEMA1)); } {BUY(B_Symbol_TS_0); "if ((DEMA2)) > (DEMA2) && (B_Symbol(DEMA3))

if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3)) {SELL(Symbol(), S_Symbol_LS_0, S_Symbol_TP_0, S_Symbol_SL_0, S_Symbol_TS_0, "if (DEMA1)<(DEMA2) && (DEMA2)<(DEMA3)";} {SEMA1(DEMA2)未満, SEMA3(DEMA3)未満, "If (DEMA2)未満";}{SEMA2(Symbol_TP_0)以上

CheckTrailingStop(Symbol(), 0, MagicNumberLong, B_Symbol_TS_0);

CheckTrailingStop(Symbol(), 1, MagicNumberShort, S_Symbol_TS_0);

} else {

if (DEMA1)>(DEMA2) {MyAlert("if (DEMA1)>(DEMA2)", "CLOSESHORT(Symbol(),0.1,100,15,17)", Symbol());} }MyAlert("If (DEMA1)>(DEMA2)", "CLOSESHORT(Symbol(),0.1,100,15,17)")

if (DEMA1)<(DEMA2) {MyAlert("if (DEMA1)<(DEMA2)", "CLOSELONG(Symbol(),0.1,100,15,17)", Symbol());}; } {MyAlert("if (DEMA1)<(DEMA2)", "CLOSELONG(Symbol(),0.1,100,15,17)", Symbol())

if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3)) {MyAlert("if ((DEMA1)>(DEMA2)) && ((DEMA2)>(DEMA3))", "BUY(Symbol(),0.1,100,15,17)", Symbol()); } {MyAlert("If (DEMA2)>(DEMA3))"), "DEMA1,100,15,17",Symbol(); } {MyAlert("DEMA1,100, 0.1,100, 0.1,15,17")

if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3)) {MyAlert("if ((DEMA1)<(DEMA2)) && ((DEMA2)<(DEMA3))", "SELL(Symbol(),0.1,100,15,17)", Symbol()); } {MyAlert("SEMA1), 0.1,100,16,17", Symbol()

}

g_bars_276 = Bars;

return (0);

}

//----DEMA VARIABLES-----正しく設定されていません、助けが必要です-----。

int start() {

double DEMA1 = (iMA(NULL,NULL,4,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,4,0,MODE_EMA,iMA(NULL,NULL,4,0,MODE_EMA,PRICE_CLOSE,0),0))).DEMA1 = (NULL(NULL:NULL:NULL:0:0,MODE_EMA:0),iMA(NULL:NULL:NULL:NULL:0,MODE_EMA,PRICE(CLOSE),0));

return(DEMA1);

}

int start() {

double DEMA2 = (iMA(NULL,NULL,6,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,6,0,MODE_EMA,iMA(NULL,NULL,6,0,MODE_EMA,PRICE_CLOSE,0),0))).DEMA2 = (NULL.NULL.NULL.6,0,MODE_EMA(PRICE,CLOSE)0,MODE_EMA(6,0,MODE_EMA,PRICE_CLOSE,0));

return(DEMA2);

}

int start() {

double DEMA3 = (iMA(NULL,NULL,12,0,MODE_EMA,PRICE_CLOSE,0))*2 - (iMA(NULL,NULL,12,0,MODE_EMA,iMA(NULL,NULL,12,0,MODE_EMA,PRICE_CLOSE,0),0))).DEMA2 = (NULL.NULL.NULL.NULL.N.M.M.M.,MODE_EMA,PRICE_CLOSE,0));

return(DEMA3);

}

//

 

MA+Stoch Alert...お願いします。

MA+stochのアラート機能付きインジケータを作りたいのですが。

stoch(5,3,3);MA(8);MA(15);MA(30)....

MA(8)>MA(15)>MA(30) で、%K が%D を超えているがレベル50以下である場合に警告する

MA(8)<MA(15)<MA(30)で、%Dが%Kより上だがレベル50より大きい場合に警告

どうもありがとうございました。

私の英語は外国語です

共感します

 
lequoctrieu:
MA+stochのアラート付きインジケータの作成をお願いします。

ストキャスト(5,3,3);MA(8);MA(15);MA(30)...の場合。

MA(8)>MA(15)>MA(30)で%Kが%Dより上でレベル50未満である場合に警告。

MA(8)<MA(15)<MA(30)で、%Dが%Kより上だがレベル50より大きい場合に警告

どうもありがとうございました。

私の英語は外国語です

お願いします。

こんにちは。

私のIndisの一つからのコードスニペット、あなたのニーズに合わせて変更する必要があります。

extern bool AlertON=false;

extern bool EmailON=true;

extern bool SoundON=false; extern bool EmailON=true; extern bool VoiceON=false;

extern bool VoiceON=false;

extern bool SMSON=false;

extern string ExtSoundFileName = "";//外部サウンドファイル必要、削除より。

FastMA = fastMAnow;

SlowMA = slowMAnow;

if ((fastMAnow >= slowMAnow) && (fastMAprevious < slowMAprevious))

{

if (i == 1 && flagval1==0)

{

flagval1=1;

flagval2=0とする。

if (AlertON==true) Alert("BUY signal at Ask=",Ask,"\n Bid=",Bid,"\n Time=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime(),":",TimeMinute(CurTime()),"\n Symbol=",Symbol(), "Period=",Period()));

if (EmailON==true) SendMail("2754 BUY-ALP EUR", "BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+".で買いシグナル", "+TimeMinute(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SMSON==true) SendMail("2754 BUY-ALP EUR", "BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SoundON==true) PlaySound(ExtSoundFileName);//ピー音など

if (VoiceON==true) PlaySound(ExtSoundFileName);// 自分のスピーチwav

}

CrossUp = Low - Range*0.5;

}

else if ((fastMAnow slowMAprevious))

{

if (i == 1 && flagval2==0)

{

flagval2=1。

flagval1=0;

if (AlertON==true) Alert("SELL signal at Ask=",Ask,"\n Bid=",Bid,"\n Date=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime(),":",TimeMinute(CurTime()),"\n Symbol=",Symbol(), "Period=",Period());

if (EmailON==true) SendMail("2754 SELL-ALP EUR", "SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+".で売。"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SMSON==true) SendMail("2754 SELL-ALP EUR", "SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SoundON==true) PlaySound(ExtSoundFileName);//peeps etc.

if (VoiceON==true) PlaySound(ExtSoundFileName);// 自分のスピーチwav

}

CrossDown = High + Range*0.5;

}

}

return(0);

}

 

MA+Stoch アラート...お願いします。

ixbone:
こんにちは。

私のIndisからのコード・スニペット、あなたの必要性に合わせる必要があります。

extern bool AlertON=false;

extern bool EmailON=true;

extern bool SoundON=false; extern bool EmailON=true; extern bool VoiceON=false;

extern bool VoiceON=false;

extern bool SMSON=false;

extern string ExtSoundFileName = "";//外部サウンドファイル必要、削除より。

FastMA = fastMAnow;

SlowMA = slowMAnow;

if ((fastMAnow >= slowMAnow) && (fastMAprevious < slowMAprevious))

{

if (i == 1 && flagval1==0)

{

flagval1=1;

flagval2=0とする。

if (AlertON==true) Alert("BUY signal at Ask=",Ask,"\n Bid=",Bid,"\n Time=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime(),":",TimeMinute(CurTime()),"\n Symbol=",Symbol(), "Period=",Period()));

if (EmailON==true) SendMail("2754 BUY-ALP EUR", "BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+".で買いシグナル", "+TimeMinute(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SMSON==true) SendMail("2754 BUY-ALP EUR", "BUY signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SoundON==true) PlaySound(ExtSoundFileName);//ピー音など

if (VoiceON==true) PlaySound(ExtSoundFileName);// 自分のスピーチwav

}

CrossUp = Low - Range*0.5;

}

else if ((fastMAnow slowMAprevious))

{

if (i == 1 && flagval2==0)

{

flagval2=1。

flagval1=0;

if (AlertON==true) Alert("SELL signal at Ask=",Ask,"\n Bid=",Bid,"\n Date=",TimeToStr(CurTime(),TIME_DATE)," ",TimeHour(CurTime(),":",TimeMinute(CurTime()),"\n Symbol=",Symbol(), "Period=",Period());

if (EmailON==true) SendMail("2754 SELL-ALP EUR", "SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+".で売。"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SMSON==true) SendMail("2754 SELL-ALP EUR", "SELL signal at Ask="+DoubleToStr(Ask,4)+", Bid="+DoubleToStr(Bid,4)+", Date="+TimeToStr(CurTime(),TIME_DATE)+" "+TimeHour(CurTime())+":"+TimeMinute(CurTime())+" Symbol="+Symbol()+" Period="+Period()");

if (SoundON==true) PlaySound(ExtSoundFileName);//peeps etc.

if (VoiceON==true) PlaySound(ExtSoundFileName);// 自分のスピーチwav

}

CrossDown = High + Range*0.5;

}

}

return(0)を実行します。

}

ありがとうございました。

私はコードを書くのがとても下手なので、あなたのコードを理解することができません...あなたは私が使用するためにインジケータ(.mq4)を構築するのを助けることができます。

もしそうなら、私は非常にあなたに感謝します。

良い仕事の日でありますように

 

現在のバーの高値が前のバーの高値より2ピップス大きいかどうかを確認 するにはどうすればよいですか?

すみません、この質問は間違った場所にあります。

この管理者を削除してください。

ありがとうございます。

 

注文の一部をクローズする

こんにちは。

私は、2つのレベルで利益を 取るEAをコード化しようとしています。これを行うには、「x」ロットが最初の利益目標で取り除かれ、残りのロットが2番目の利益目標で取り除かれるように、元の注文を分割したいのですが、どうすればいいですか?これを実現するために、私は2つのOrderClose()関数を使用しています。

最初のOrderClose()関数は完全に動作しますが、既存の注文を閉じ、残りのロットのための新しいチケットを生成しているように見えます。

この「新しい」チケット/注文をどのように処理すれば、2番目のCloseOrder()関数で処理できるのか、どなたかご指導いただけないでしょうか。

乾杯

ジム

 
jimdee:
こんにちは。

私は、2つのレベルで利益を取るEAをコード化しようとしています。これを行うには、「x」ロットが最初の利益目標で取り除かれ、残りのロットが2番目の利益目標で取り除かれるように、元の注文を分割したいのです。これを実現するために、私は2つのOrderClose()関数を使用しています。

最初のOrderClose()関数は完全に動作しますが、既存の注文を閉じ、残りのロットのための新しいチケットを生成しているように見えます。

この「新しい」チケット/注文をどのように処理すれば、2番目のCloseOrder()関数で処理できるのか、どなたかご指導いただけないでしょうか。

乾杯

ジム

ちょうどアイデア。もし、利益のための部分的な閉鎖が難しい場合は、1つではなく2つのトレードを使用してみることができます。そして、それらのトレードをオープン 時間で管理します。

 
jimdee:
こんにちは。

私は、2つのレベルで利益を取るEAをコード化しようとしています。これを行うには、「x」ロットが最初の利益目標で取り除かれ、残りのロットが2番目の利益目標で取り除かれるように、元の注文を分割したいのです。これを実現するために、私は2つのOrderClose()関数を使用しています。

最初のOrderClose()関数は完全に動作しますが、既存の注文を閉じ、残りのロットのための新しいチケットを生成しているように見えます。

この「新しい」チケット/注文をどのように処理すれば、2番目のCloseOrder()関数で処理できるのか、どなたかご指導いただけないでしょうか。

乾杯

ジム

ブローカーが処理するためのより少ない取引があるので、人々は、異なる参照を持って、私は部分的な閉鎖を使用するのが好きです。

パーシャルクローズが行われるたびに、ブローカーは残りの注文を新規注文として扱うので、新しいチケットを割り当てます。しかし、次のステップで取引を識別する方法が注文チケットに基づくものでなければ、それは注文 ロットに基づく ものでもよいし、EAがどの段階にあるかを示す変数を割り当てることもできますので、実際には重要ではありません。

パーシャルクローズは、次のような場合、完全に正しく処理するのはちょっと難しいです。

1.1.MMの関係で注文のロットが異なる場合がある。

2.2. 同時に複数の異なるロットの注文が存在する。

もし、あなたのEAが上記のような状況にあり、あなたがコーディングの経験がないのであれば、複数注文のアプローチを使用することができると思います。

 

簡単な問題を素早く解決してくれました。ありがとうございました。)

以下の変数を返したいのですが.

1.最後に記録された月曜日(時間バー)の最初のバーオープン価格。

2.最後に記録された水曜日(時間バー)の最後のバーの終値

これを行う方法を知っているだれか。Iveは彼らがと渡すように変数を得ることを試みた。

//-------------------------------------------------------

if (currentday == 1 && currenttime == 0)

{

MondayOpenPrice = iOpen(Symbol(),PERIOD_H1,0);

}

//--------------------------------------------------------

上記の問題点は、これらの変数を保持するために、常にメタトレーダーを一週間稼動させ続けることができないことです。

そのため、月曜日などに最初に記録されたオープンプライスの履歴をEAで振り返る必要があります。

お時間をいただき、ありがとうございました。