コーディングの方法は? - ページ 69 1...626364656667686970717273747576...347 新しいコメント waltini 2008.02.12 10:16 #681 こんにちは、Wolfe wolfe: 私はこれが前にカバーされている知っているが、誰かがバーごとに1つだけ取引を許可するためにいくつかのコードを表示することができますか? ありがとうございます。 私の場合、次のように動作します。 datetime LastOpenTime=0; int 順序 for(int t=0;t<OrdersTotal();t++) { if(OrderSelect(t, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol() == Symbol() && OrderMagicNumbers() == MagicNumbers && OrderType() == OP_SELL) { if(OrderOpenTime()>LastOpenTime)LastOpenTime=OrderOpenTime()。 } } } そして、これを自分のコードに貼り付けます。 if(LastOpenTime0) { OrderSend(blah blah) Time[0]は時間枠のローソクの始まりなので、正しい時間枠を選択してください。 How to code? エラーに悩まされ、取引業務がない [ARCHIVE] Any rookie question, Erman Ardianto 2008.02.12 15:21 #682 waltini: これは私の場合datetime LastOpenTime=0; .................... Time[0]はタイムフレームのローソク足の始まりなので、正しいタイムフレームを選択することを確認してください。 これは、もう少し簡単かもしれません。 datetime LastOpenTime; //Global var [/CODE] [CODE] int init() { LastOpenTime=Time[0]; } int start() { ................ if(LastOpenTime!=Time[0]) { // do your trade code LastOpenTime=Time[0]; } .............. return(0); } あなたの「トレードコード」は、どのローソク足でも一度だけ実行されます。MT4を一度閉じて、再度起動しても、そのローソク足ではもう取引は行われません。ただし、午後5時のローソク足でEAを起動したとすると、そのローソク足ではトレードは行われず、次のローソク足を待つ必要があることに注意してください。 nittany1 2008.02.12 17:47 #683 wolfe: 以前にも取り上げられたことがあると思いますが、どなたか1つのバーに1つの取引しかできないようにするコードを教えていただけませんか? ありがとうございます。 グローバル、init()の前にこれを置く datetime PreviousBar;[/CODE] In the order placement and/or order close stuff, wrap it in this: if(NewBar() == true) { if blah blah blah, gimme pips // not actual functions but you get the idea if blah blah blah, close orders // um } Common function outside main loop: [CODE]//--- returns true if current bar just formed bool NewBar() { if(PreviousBar<Time[0]) { PreviousBar = Time[0]; return(true); } else { return(false); } return(false); } How to code? Detecting the start of How to properly make timebandit 2008.02.13 04:45 #684 プログラミングに関するヘルプ こんにちは。 私はプログラミングをしようと頑張っているのですが、レンガの壁にぶつかっています。そこで、本当に簡単なことをやってみました。Print("Five");」のコメントを解除して、プログラムをテストすると、「Yahooooooo」とだけ表示されます。(まあ、"1 "も印刷されるのですが)。Print("Five");」をコメントアウトすると、「Yahooooooo」さえもプリントされなくなりました。何が足りないのでしょうか? ファイル: trial.mq4 2 kb k3iroll 2008.02.13 07:23 #685 1つの取引がTPに到達したら、すべての保留中の注文と新規注文をクローズする。 こんにちは。 私のEAで、1つの取引がTPにヒットしたら、すべての保留中の注文と未決済の注文をクローズするコードを書こうとしています。以下は私が使用したコードですが、機能していないようです。誰かが見て、何が欠けているのか助言することができます。ありがとうございます。 if( PreviousOpenOrders > OpenOrders ) { for( cnt = OrdersTotal()-1; cnt >= 0; cnt-- ) { OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES); モード = OrderType(); if( OrderSymbol() == Symbol() && ・・・。 OrderMagicNumber()==Magic) { if( mode == OP_BUY ) OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Blue); if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red); if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Slippage,Red); if (mode == OP_SELLLIMIT) OrderDelete(OrderTicket()); if (mode == OP_BUYLIMIT) OrderDelete(OrderTicket())。 } } } } 10ポイント 3.mq4 コーディングのヘルプ [警告は閉鎖されました!】フォーラムを乱雑にしないために、どんな初心者の質問でも。プロフェッショナルは、通り過ぎないでください。あなたなしでは、どこにも行けない。 ralphronnquist 2008.02.13 07:46 #686 OrderClosePrice()の代わりに、BidとAskをそれぞれ使用する... k3iroll 2008.02.13 08:44 #687 ralph.ronnquist: OrderClosePrice()の代わりにBidとAskをそれぞれ使用する... こんにちは、ralphです。 例を挙げるのを手伝ってくれませんか。助けてくれてありがとうございます。 Michel 2008.02.13 08:48 #688 timebandit: こんにちは、私はプログラミングをしようと頑張っているのですが、レンガの壁にぶち当たっています。そこで、本当に簡単なことをやってみました。Print("Five");" のコメントを外してプログラムをテストすると、"Yahooooooo" としか表示されません。(まあ、"1 "も印刷されるのですが)。Print("Five");」をコメントアウトすると、「Yahooooooo」さえもプリントされなくなりました。何が足りないのでしょうか? 括弧を使用しない場合は、1行だけ実行されます。何をしたいのかにもよりますが、こんな感じでしょうか。 if(d>5) { Print("Five"); Print("Yahoooooooooooooooooooooooo"); } ralphronnquist 2008.02.13 09:09 #689 if( mode == OP_BUY ) OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Blue); if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Red); RonaldRaygun 2008.02.13 21:25 #690 ストップワンの移動 これは、ある利益を得た後にストップロスをブレークイーブンに移動 させるための私のちょっとしたコードです。何か問題があるのでしょうか? //MoveOnce if(MoveStopOnce && MoveStopWhenPrice > 0) { if(Bid - OrderOpenPrice() == Point * MoveStopWhenPrice) { OrderModify(OrderTicket(),OrderOpenPrice(), Bid - Point * MoveStopTo, OrderTakeProfit(), 0, Red); if (!EachTickMode) BarCount = Bars; continue; } } 1...626364656667686970717273747576...347 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
こんにちは、Wolfe
私はこれが前にカバーされている知っているが、誰かがバーごとに1つだけ取引を許可するためにいくつかのコードを表示することができますか? ありがとうございます。
私の場合、次のように動作します。
datetime LastOpenTime=0;
int 順序
for(int t=0;t<OrdersTotal();t++)
{
if(OrderSelect(t, SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderMagicNumbers() == MagicNumbers && OrderType() == OP_SELL)
{
if(OrderOpenTime()>LastOpenTime)LastOpenTime=OrderOpenTime()。
}
}
}
そして、これを自分のコードに貼り付けます。
if(LastOpenTime0)
{ OrderSend(blah blah)
Time[0]は時間枠のローソクの始まりなので、正しい時間枠を選択してください。
これは私の場合
datetime LastOpenTime=0;
....................
Time[0]はタイムフレームのローソク足の始まりなので、正しいタイムフレームを選択することを確認してください。これは、もう少し簡単かもしれません。
datetime LastOpenTime; //Global var
[/CODE]
[CODE]
int init()
{
LastOpenTime=Time[0];
}
int start()
{
................
if(LastOpenTime!=Time[0])
{
// do your trade code
LastOpenTime=Time[0];
}
..............
return(0);
}あなたの「トレードコード」は、どのローソク足でも一度だけ実行されます。MT4を一度閉じて、再度起動しても、そのローソク足ではもう取引は行われません。ただし、午後5時のローソク足でEAを起動したとすると、そのローソク足ではトレードは行われず、次のローソク足を待つ必要があることに注意してください。
以前にも取り上げられたことがあると思いますが、どなたか1つのバーに1つの取引しかできないようにするコードを教えていただけませんか? ありがとうございます。
グローバル、init()の前にこれを置く
In the order placement and/or order close stuff, wrap it in this:
{
if blah blah blah, gimme pips // not actual functions but you get the idea
if blah blah blah, close orders // um
}Common function outside main loop:
[CODE]//--- returns true if current bar just formed
bool NewBar()
{
if(PreviousBar<Time[0])
{
PreviousBar = Time[0];
return(true);
}
else
{
return(false);
}
return(false);
}プログラミングに関するヘルプ
こんにちは。
私はプログラミングをしようと頑張っているのですが、レンガの壁にぶつかっています。そこで、本当に簡単なことをやってみました。Print("Five");」のコメントを解除して、プログラムをテストすると、「Yahooooooo」とだけ表示されます。(まあ、"1 "も印刷されるのですが)。Print("Five");」をコメントアウトすると、「Yahooooooo」さえもプリントされなくなりました。何が足りないのでしょうか?
1つの取引がTPに到達したら、すべての保留中の注文と新規注文をクローズする。
こんにちは。
私のEAで、1つの取引がTPにヒットしたら、すべての保留中の注文と未決済の注文をクローズするコードを書こうとしています。以下は私が使用したコードですが、機能していないようです。誰かが見て、何が欠けているのか助言することができます。ありがとうございます。
if( PreviousOpenOrders > OpenOrders )
{
for( cnt = OrdersTotal()-1; cnt >= 0; cnt-- )
{
OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
モード = OrderType();
if( OrderSymbol() == Symbol() && ・・・。
OrderMagicNumber()==Magic)
{
if( mode == OP_BUY ) OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Blue);
if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),slippage,Red); if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Slippage,Red);
if (mode == OP_SELLLIMIT) OrderDelete(OrderTicket());
if (mode == OP_BUYLIMIT) OrderDelete(OrderTicket())。
}
}
}
}
OrderClosePrice()の代わりに、BidとAskをそれぞれ使用する...
OrderClosePrice()の代わりにBidとAskをそれぞれ使用する...
こんにちは、ralphです。
例を挙げるのを手伝ってくれませんか。助けてくれてありがとうございます。
こんにちは、私はプログラミングをしようと頑張っているのですが、レンガの壁にぶち当たっています。そこで、本当に簡単なことをやってみました。Print("Five");" のコメントを外してプログラムをテストすると、"Yahooooooo" としか表示されません。(まあ、"1 "も印刷されるのですが)。Print("Five");」をコメントアウトすると、「Yahooooooo」さえもプリントされなくなりました。何が足りないのでしょうか?
括弧を使用しない場合は、1行だけ実行されます。何をしたいのかにもよりますが、こんな感じでしょうか。
{
Print("Five");
Print("Yahoooooooooooooooooooooooo");
}if( mode == OP_BUY ) OrderClose(OrderTicket(),OrderLots(),Bid,slippage,Blue);
if( mode == OP_SELL ) OrderClose(OrderTicket(),OrderLots(),Ask,slippage,Red);
ストップワンの移動
これは、ある利益を得た後にストップロスをブレークイーブンに移動 させるための私のちょっとしたコードです。何か問題があるのでしょうか?
if(MoveStopOnce && MoveStopWhenPrice > 0) {
if(Bid - OrderOpenPrice() == Point * MoveStopWhenPrice) {
OrderModify(OrderTicket(),OrderOpenPrice(), Bid - Point * MoveStopTo, OrderTakeProfit(), 0, Red);
if (!EachTickMode) BarCount = Bars;
continue;
}
}