[ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 3. - ページ 58

 
artmedia70:

頻繁なリクエストに巻き込まれるのが怖いのでは?結局、15〜30秒ごとに、すでに持っているポジションに加えて新しいポジションを開くか、すでに持っているポジションを削除する必要があります。

オープンポジションのボリュームを変更することはできません。そのため、いくつかのポジションに分割する必要があります。

EA自体に興味がある。はい、そして、すでに開いている取引の量は、単純に追加することで増やすことができ、部分的にロックすることで減らすことができます。
 
sergeev:

EA機能


17
darsey 2011.08.08 12:40
こんにちは。mql4でEAをプログラムして、15~30秒ごとにロットを調整することは可能ですか?

ロットの調整方法として考えられること。
15~30秒ごとに新しい小さなポジションを建て、希望の利益に達したところでまとめて決済します。
 
DhP:

ロットの調整方法として考えられること。
15~30秒ごとに新しい小さなポジションを建て、希望の利益に達したところでまとめて決済します。
ありがとうございます。考えてみます。実は、相関は100%だけど、ボラティリティが違う2つのシリーズがあるんです。一方のシリーズを他方のシリーズに変換したいのですが。バー内回数ロット修正のみで、出口が見えない状況です。何か感想はありますか?自宅でHFTができればいいのですが :(
 

こんにちは。

EAがあり、そのEAがチャートに現れる前にオープンした注文を選択 する機能があります。そして、特にこの注文には、1つの終了条件があります。例えば、売り注文をしていて、条件付きで価格が上昇したとすると、この注文はEAが表示され次第、決済されます。だから、すべて問題なく、期待通りに閉じることができるのです。しかし、閉店時のチェックがある状態を打破できない。条件以前にこの関数にアラートを出したら、0が返ってきた!?なぜ?ドキュメントにはopenとpendingだけが0を返すと書かれています。なぜこの関数は、閉じたものに対してもゼロを返すのですか?閉じてから1秒間のポーズをとってみましたが(もしかしたらデータが来ていないかもしれません)、やはりゼロが返ります。以下はこの部分のコードです。

if (tempWho == 0 && pos != -1)
{
    if (OrderSelect(pos, SELECT_BY_TICKET))
    {
        ...
        //Тут закрываются ордера
        ...
            
        if (OrderCloseTime() != 0)
        {
            ...
        }
    }
}

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

 

一度に2つの注文をする方法を教えてください。何もかもがうまくいかない。

// 最大値に近ければOP_SELLLIMIT注文を設定
if (max<min)
{
1 - OrderSend(Symbol(),OP_SELLLIMIT,lot,cena_sell,3,sl_sell,tp_sell,"",1,0,Red);
Alert (GetLastError()); // 発注時のエラーメッセージ
//order_opened = true; // 注文が蹴られた場合、開けない
2 - OrderSend(Symbol(),OP_SELLLIMIT,lot_1,cena_sell_d_1,3,sl_sell,tp_sell_d_1,".",2,0,Red);
Alert (GetLastError()); // 注文設定エラーに関するメッセージ

}
else // それ以外の注文OP_BUYLIMITを設定
{

OrderSend(Symbol(),OP_BUYLIMIT,lot,cena_buy,3,sl_buy,tp_buy,".",5,0,Blue);
Alert (GetLastError()); // 注文発注時のエラーメッセージ
//order_opened = true; // 注文がうまくいった場合、再度オープンしないこと

なぜか1つだけ注文が開く。

1 - OrderSend(Symbol(,OP_SELLLIMIT,lot,cena_sell,3,sl_sell,tp_sell,",1,0,Red);
Alert (GetLastError()); // 注文設定エラーのメッセージを表示します。

 

tosergey_r:

エラーには何が書いてあるのですか?具体的には、どのようなエラーコード なのでしょうか?

 

を設定した場合。

int order =OrdersTotal(); // 注文が設定されているかどうかチェック
if (order == 0)

条件によってselllimitかbuylimitのどちらかを開くので、2つのselllimit注文か1つのbuylimit注文が必要です

 

tosergey_r:

わかってないなぁ。Alert(GetLastError();) には何が表示されるのですか?

 
130エラー です。了解です。Selllimitを同じにしようとしたら、すべてうまくいきました。
 

tosergey_r:

上の方がおっしゃるように、2つ目のStopLoserと関係がありますね。そこは計算を間違えているのでしょう。計算されるセグメントをよく確認してください。

念のため、エラーの記録を以下に示します。https://docs.mql4.com/ru/trading/errors。