初心者の方からの質問 MQL4 MT4 MetaTrader 4 - ページ 2 123456789...260 新しいコメント Nickolay72 2016.11.09 07:56 #11 Vladimir Karputov: ご指摘の通り、コンパイラは悪態をつきます。 { Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue); if(!Ticket>0)Print(GetLastError()); else { if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true) if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol())) { TP=NormalizeDouble(Bid+TakeProfit*Point,Digits); bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0); return; } }動作しない。 Questions from Beginners MQL4 MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 Buy order problems Vitaly Muzichenko 2016.11.09 08:22 #12 Nickolay72:ご指摘の通り、コンパイラは悪態をつきます。 { Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue); if(!Ticket>0)Print(GetLastError()); else { if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true) if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol())) { TP=NormalizeDouble(Bid+TakeProfit*Point,Digits); bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0); return; } }うまくいかないんです。以下は、あなたのコードです。if(! Ticket>0)Print(GetLastError()) --- チケットは整数値、すなわち "2354865 " である。 ここで質問:整数は(!2354865 )に ならない のでしょうか? 整数は「> 0」より大きいか「< 0」より小さいかのどちらかです。このbool値は、false/true ( ! )である。さらに、この構文:if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true) --- チケットごとにパラメータを列挙しており、具体的なチケットを表示した場合、そのマジックナンバーやシンボルを確認する意味がない、つまり明らかに不要です:if((OrderMagicNumber()==magic) &&(OrderSymbol()==Symbol())) 最後に、このような構成は、数学的なタスクの順序を明示的に指定するために、より良いブラケットです:NormalizeDouble(Bid+( TakeProfit*ポイント)、Digits)。 Questions from Beginners MQL4 MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 [ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. Vitalie Postolache 2016.11.09 09:16 #13 Vitaly Muzichenko: そして最後に、このような構文は、行列のタスクの順序を明示的に指定するために括弧で囲むとよいでしょう:NormalizeDouble(Bid+( TakeProfit*Point),Digits);いいえ、ブラケットなしでも可能です。しかし、合計が掛け算になる場合は、括弧が必要です。 K_i_r_i_t_o 2016.11.09 11:21 #14 poman:は、期間D1で0バーのオープン時間の値を取ることができ、+秒数を追加します。1行目の現在時刻と取得時刻を比較する条件において保留中の注文では、注文の有効期限である秒数を設定することができます。Data_1=iTime(Symbol(),PERIOD_D1,0)+86400; //время жизни ордера ありがとうございました!)助かりました) Aibek Mugiynov 2016.11.09 18:23 #15 コードのヘルプ、アドバイザーは、すべてのバーを通過し、どのようにそれは最後の200のバーを通過するようにするには!?感謝int i, k=iBars(Symbol(), 0);for (i=1; i<k; i++) Vladimir Karputov 2016.11.09 18:56 #16 プロバイダシグナル トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム 初心者の方からの質問 プロバイダ_シグナル さん 2016.11.09 18:38 金曜日の夜にEAですべての注文をクローズするには?週末に残さないように。関数DayOfWeek()が見つかりました。小切手を書くことができる if (DayOfWeek() == 5){// }しかし、時間に対してどのような小切手を書けばいいのだろう。例えば、22:00だったらどうでしょう? mila.com 2016.11.09 19:17 #17 Vladimir Karputov:プロバイダシグナルでも、その時のチェックはどんな風に書けばいいんだろう。例えば、22:00は何でしょう? extern int St_Hour = 22;if (Hour()==St_Hour) mila.com 2016.11.09 19:21 #18 Aibek Mugiynov:コードのヘルプ、アドバイザーは、すべてのバーを通過し、どのようにそれは最後の200のバーを通過するようにするには!?感謝int i, k=iBars(Symbol(), 0);for (i=1; i<k; i++)for (i=1; i<200; i++) mila.com 2016.11.09 19:39 #19 こんにちは、助けてください。 3本のバーでバッファが満たされない場合、バッファを満たします。 int BarCount=3; BER=true; for(int il=1;il<=BarCount;il++) { if(BufferPointUp[il]!= EMPTY_VALUE){BER=false;break;} } if(BER) BufferPointUp[i]=high[i]; すべてのバーで、無差別に塗りつぶす。 しかし、こうすればすべて正しく表示される。 if(BufferPointUp[i+1]== EMPTY_VALUE&&BufferPointUp[i+2]== EMPTY_VALUE&&BufferPointUp[i+3]== EMPTY_VALUE)BufferPointUp[i]=high[i];このチェックを ループで行うには? Provider_Signal 2016.11.09 21:07 #20 mila.com: extern int St_Hour = 22;if (Hour()==St_Hour) ありがとうございました。 123456789...260 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ご指摘の通り、コンパイラは悪態をつきます。
Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
if(!Ticket>0)Print(GetLastError());
else
{
if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true)
if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol()))
{
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0);
return;
}
}
動作しない。
ご指摘の通り、コンパイラは悪態をつきます。
Ticket=OrderSend(NULL,OP_BUY,Lot,Ask,slippage,0,0,NULL,magic,0,Blue);
if(!Ticket>0)Print(GetLastError());
else
{
if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true)
if((OrderMagicNumber()==magic) && (OrderSymbol()==Symbol()))
{
TP=NormalizeDouble(Bid+TakeProfit*Point,Digits);
bool modify=OrderModify(OrderTicket(),OrderOpenPrice(),TP,0,0);
return;
}
}
うまくいかないんです。
以下は、あなたのコードです。
if(! Ticket>0)Print(GetLastError()) --- チケットは整数値、すなわち "2354865 " である。 ここで質問:整数は(!2354865 )に ならない のでしょうか? 整数は「> 0」より大きいか「< 0」より小さいかのどちらかです。このbool値は、false/true ( ! )である。
さらに、この構文:if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES)==true) --- チケットごとにパラメータを列挙しており、具体的なチケットを表示した場合、そのマジックナンバーやシンボルを確認する意味がない、つまり明らかに不要です:if((OrderMagicNumber()==magic) &&(OrderSymbol()==Symbol()))
最後に、このような構成は、数学的なタスクの順序を明示的に指定するために、より良いブラケットです:NormalizeDouble(Bid+( TakeProfit*ポイント)、Digits)。
そして最後に、このような構文は、行列のタスクの順序を明示的に指定するために括弧で囲むとよいでしょう:NormalizeDouble(Bid+( TakeProfit*Point),Digits);いいえ、ブラケットなしでも可能です。しかし、合計が掛け算になる場合は、括弧が必要です。
は、期間D1で0バーのオープン時間の値を取ることができ、+秒数を追加します。
1行目の現在時刻と取得時刻を比較する条件において
保留中の注文では、注文の有効期限である秒数を設定することができます。
コードのヘルプ、アドバイザーは、すべてのバーを通過し、どのようにそれは最後の200のバーを通過するようにするには!?感謝
for (i=1; i<k; i++)
プロバイダシグナル
トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム
初心者の方からの質問
プロバイダ_シグナル さん 2016.11.09 18:38
金曜日の夜にEAですべての注文をクローズするには?週末に残さないように。
関数DayOfWeek()が見つかりました。
小切手を書くことができる
{
//
}
しかし、時間に対してどのような小切手を書けばいいのだろう。例えば、22:00だったらどうでしょう?
プロバイダシグナル
if (Hour()==St_Hour)
コードのヘルプ、アドバイザーは、すべてのバーを通過し、どのようにそれは最後の200のバーを通過するようにするには!?感謝
for (i=1; i<k; i++)
こんにちは、助けてください。
3本のバーでバッファが満たされない場合、バッファを満たします。
int BarCount=3;
BER=true;
for(int il=1;il<=BarCount;il++)
{
if(BufferPointUp[il]!= EMPTY_VALUE){BER=false;break;}
}
if(BER) BufferPointUp[i]=high[i];
すべてのバーで、無差別に塗りつぶす。
しかし、こうすればすべて正しく表示される。
このチェックを ループで行うには?
if (Hour()==St_Hour)