コーディングの方法は? - ページ 22 1...151617181920212223242526272829...347 新しいコメント Kale 2007.03.13 14:53 #211 クロスした時に int crossTime = Time[0] と書き、変数 crossTime を使って iBarShift関数で 何本目のバーが経過したかを常に確認できます。 SaxMan 2007.03.13 16:09 #212 Kalenzoさん、こんにちは。 Kalenzo: クロスがあったときにint crossTime = Time[0]と書いておいて、変数crossTimeを使ってiBarShift関数で何本経過したかを確認するのはいつでもできます。 ベアバー」だけをカウントに含めるには、このコードはどのように書くのでしょうか? I understand the ibarshift but this would include all bars since cross. 私のように "Bear Bars "をカウントするためにカウントシステムを使用する必要があり、これが私の問題があるところだと思います。 私はもともとこのコードで私のコードをテストしました....しかし、私のEAに実際に表示される上記のコードには変換されませんでした。 int start() { //---- double f=iMA(NULL,0,3,0,MODE_SMA,PRICE_CLOSE,0); double s=iMA(NULL,0,7,0,MODE_SMA,PRICE_CLOSE,0); double fp=iMA(NULL,0,3,0,MODE_SMA,PRICE_CLOSE,1); double sp=iMA(NULL,0,7,0,MODE_SMA,PRICE_CLOSE,1); static bool CrossedUP,CrossedDn; static int Count=0; if(f>s && fp<=sp) { CrossedUP=true; CrossedDn=false; Alert(Symbol()," Crossed UP"); Count=0; } else if(f=sp) { CrossedUP=false; CrossedDn=true; Alert(Symbol()," Crossed Down"); Count=0; } if(NewBar()==true && f>s || f<s) Count++; Comment("Crossed UP: ",CrossedUP," Crossed Down: ",CrossedDn," Bars since Cross: ",Count); //---- return(0); } 他に何かご意見がありましたらお願いします。 ありがとうございます。 SaxMan How to code? Expert Advisor Script Manual/Userguide EA that sells when SaxMan 2007.03.13 16:26 #213 ごめんねオムレツ。 これでもダメなんです ありがとうございます。 サックスマン omelette: こんにちは、これを試してみてください。bool LongClose() { if(MAFastC=MASlowP) { CrossedUp=false; CrossedDn=true; BarCount=0; } else if(MAFastC>MASlowC && MAFastP<=MASlowP) { CrossedUp=true; CrossedDn=false; BarCount=0; Alert("Crossed Down"); } if(CrossedDn==true && NewBar()==true && Candle3mP=="Bear") BarCount++; if(BarCount>=2 && Candle3mC=="Bear") { Alert("Close Long Position"); return(true); } else return(false); islandrock 2007.03.18 18:02 #214 EAコードに時間制限を設ける 私のEAにタイムリミットを設定することができません。 コードラインは次のとおりです。 OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green) ゼロを1にしたり、12にしたりしてみましたが、取引を停止させることができません。 バックテストを使って いるのですが、うまくいくかどうか確認するために。 xxDavidxSxx 2007.03.18 22:30 #215 試してみると...。 { string expire_date = "2007.10.22"; datetime expirevar = StrToTime(expire_date); if ( CurTime() >= expirevar ) { アラート("Version Expired"); return(0); // コード return(0); デイブ MisBHavin 2007.03.18 22:39 #216 islandrock: 私のEAに時間制限を設けることができません。のコードラインは以下の通りです。 OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green) ZEROを1や12に変えてみましたが、取引を停止させることができません。 バックテストをしているのですが、動作するかどうか確認するために。 エラーチャネルを確認してください。 一部の取引サーバーでは、保留中の注文の有効期限の適用が無効になっていることがあります。この場合、expiration パラメータに0以外の値が指定されると、エラー 147(ERR_TRADE_EXPIRATION_DENIED)が生成されます。 パラメータは'datetime'変数ですが、12がその変数宣言の中に入るとは思えません。 omelette 2007.03.18 22:41 #217 islandrock: 私のEAにタイムリミットを設定することができません。のコードラインは以下の通りです。 OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green) ZEROを1や12に変えてみましたが、取引を停止することができません。 バックテストをしているのですが、有効期限はそれで大丈夫ですか? 有効期限タイムアウトは MTで問題なく機能します。唯一の注意点は、一部のブローカーがこれを許可していないことです。 有効期限は日付と時刻の 形式である必要があります。 datetime ExpirationTime = StrToTime(TimeYear(Time[0]) + "." + TimeMonth(Time[0])+ "." + TimeDay(Time[0])+" "+23+":"+55); OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point,"timetest",16384,ExpirationTime,Green); islandrock 2007.03.18 23:50 #218 を試してみました。 extern int TradeLifeHour=12; extern int TradeLifeMin=00; datetime expirationtime; (ここに何が入るのかわかりませんでした) そしてstart()内で expirationtime = CurTime()+TradeLifeHour*60*60+TradeLifeMin*60; とし、0 の領域で expirationtime を使用します。 最後のコードですが、12時間後にトレードを終了するように設定する方法がわかりません。 xxDavidxSxx 2007.03.18 23:56 #219 xxDavidxSxx: これを試してみてください....{ 文字列 expire_date = "2007.10.22"; datetime expirevar = StrToTime(expire_date); if ( CurTime() >= expirevar ) { アラート("Version Expired"); return(0); // コード return(0); } デイブ あげたコードをそのまま使ってみました。日付を2006年に変えて、リアルマネーFXDD口座のBipolerの中の適当な場所に叩き込んだら、見事に動いた。 それとも単純すぎるのかな?どうでしょう? Dave islandrock 2007.03.19 00:21 #220 ?? このコードでは、私のEAが開いた各取引の有効期限を、開いた時点から12時間にすることはできません... 1...151617181920212223242526272829...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
クロスした時に int crossTime = Time[0] と書き、変数 crossTime を使って iBarShift関数で 何本目のバーが経過したかを常に確認できます。
Kalenzoさん、こんにちは。
クロスがあったときにint crossTime = Time[0]と書いておいて、変数crossTimeを使ってiBarShift関数で何本経過したかを確認するのはいつでもできます。
ベアバー」だけをカウントに含めるには、このコードはどのように書くのでしょうか?
I understand the ibarshift but this would include all bars since cross. 私のように "Bear Bars "をカウントするためにカウントシステムを使用する必要があり、これが私の問題があるところだと思います。
私はもともとこのコードで私のコードをテストしました....しかし、私のEAに実際に表示される上記のコードには変換されませんでした。
{
//----
double f=iMA(NULL,0,3,0,MODE_SMA,PRICE_CLOSE,0);
double s=iMA(NULL,0,7,0,MODE_SMA,PRICE_CLOSE,0);
double fp=iMA(NULL,0,3,0,MODE_SMA,PRICE_CLOSE,1);
double sp=iMA(NULL,0,7,0,MODE_SMA,PRICE_CLOSE,1);
static bool CrossedUP,CrossedDn;
static int Count=0;
if(f>s && fp<=sp)
{
CrossedUP=true;
CrossedDn=false;
Alert(Symbol()," Crossed UP");
Count=0;
}
else
if(f=sp){
CrossedUP=false;
CrossedDn=true;
Alert(Symbol()," Crossed Down");
Count=0;
}
if(NewBar()==true && f>s || f<s) Count++;
Comment("Crossed UP: ",CrossedUP," Crossed Down: ",CrossedDn," Bars since Cross: ",Count);
//----
return(0);
}他に何かご意見がありましたらお願いします。
ありがとうございます。
SaxMan
ごめんねオムレツ。
これでもダメなんです
ありがとうございます。
サックスマン
こんにちは、これを試してみてください。
{
if(MAFastC=MASlowP){
CrossedUp=false;
CrossedDn=true;
BarCount=0;
}
else
if(MAFastC>MASlowC && MAFastP<=MASlowP)
{
CrossedUp=true;
CrossedDn=false;
BarCount=0;
Alert("Crossed Down");
}
if(CrossedDn==true && NewBar()==true && Candle3mP=="Bear")
BarCount++;
if(BarCount>=2 && Candle3mC=="Bear")
{
Alert("Close Long Position");
return(true);
}
else return(false);EAコードに時間制限を設ける
私のEAにタイムリミットを設定することができません。
コードラインは次のとおりです。
OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green)
ゼロを1にしたり、12にしたりしてみましたが、取引を停止させることができません。
バックテストを使って いるのですが、うまくいくかどうか確認するために。
試してみると...。
{
string expire_date = "2007.10.22";
datetime expirevar = StrToTime(expire_date);
if ( CurTime() >= expirevar )
{
アラート("Version Expired");
return(0);
// コード
return(0);
デイブ
私のEAに時間制限を設けることができません。
のコードラインは以下の通りです。
OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green)
ZEROを1や12に変えてみましたが、取引を停止させることができません。
バックテストをしているのですが、動作するかどうか確認するために。エラーチャネルを確認してください。
一部の取引サーバーでは、保留中の注文の有効期限の適用が無効になっていることがあります。この場合、expiration パラメータに0以外の値が指定されると、エラー 147(ERR_TRADE_EXPIRATION_DENIED)が生成されます。
パラメータは'datetime'変数ですが、12がその変数宣言の中に入るとは思えません。
私のEAにタイムリミットを設定することができません。
のコードラインは以下の通りです。
OrderSend(Symbol(),OP_BUY,LotsOptimized(),Ask,3,0,Ask+TakeProfit*Point, "timetest",16384,0,Green)
ZEROを1や12に変えてみましたが、取引を停止することができません。
バックテストをしているのですが、有効期限はそれで大丈夫ですか?有効期限タイムアウトは MTで問題なく機能します。唯一の注意点は、一部のブローカーがこれを許可していないことです。 有効期限は日付と時刻の 形式である必要があります。
を試してみました。
extern int TradeLifeHour=12;
extern int TradeLifeMin=00;
datetime expirationtime; (ここに何が入るのかわかりませんでした)
そしてstart()内で
expirationtime = CurTime()+TradeLifeHour*60*60+TradeLifeMin*60;
とし、0 の領域で expirationtime を使用します。
最後のコードですが、12時間後にトレードを終了するように設定する方法がわかりません。
これを試してみてください....
{
文字列 expire_date = "2007.10.22";
datetime expirevar = StrToTime(expire_date);
if ( CurTime() >= expirevar )
{
アラート("Version Expired");
return(0);
// コード
return(0);
}
デイブあげたコードをそのまま使ってみました。日付を2006年に変えて、リアルマネーFXDD口座のBipolerの中の適当な場所に叩き込んだら、見事に動いた。
それとも単純すぎるのかな?どうでしょう?
Dave
??
このコードでは、私のEAが開いた各取引の有効期限を、開いた時点から12時間にすることはできません...