[ARCHIVE]フォーラムを乱立させないために、どんなルーキーの質問でも。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 5. - ページ 69

 
Notter:

こんにちは。

また、実際の口座では、取引注文を実行する際に多くの間違いがあります。例えば、今日。

2013.01.10 13:46:09 '15082': Buy 0.15 EURUSD at 1.30844 sl: 1.30758 tp: 0.00000
2013.01.10 13:46:10 '15082': リクエストがサーバーに受け入れられました。
2013.01.10 13:46:10 '15082': requote 1.30843 / 1.30858 for open buy 0.15 EURUSD at 1.30844 sl: 1.30758 tp: 0.00000
2013.01.10 13:46:11 '15082': instant order buy 0.15 EURUSD at 1.30869 sl: 1.30785 tp: 0.00000
2013.01.10 13:46:11 '15082': リクエストがサーバーに受け入れられました。
2013.01.10 13:46:11 '15082': リクエスト処理中
2013.01.10 13:46:13 '15082': 注文が開始されました : #12941470 buy 0.15 EURUSD at 1.30869 sl: 1.30785 tp: 0.00000

つまり、シグナルからポジションをオープンするまでに4秒かかっているのです。 そして、私が思うに、これは限界ではありません。

この遅れの原因は、15ポイント差で注文がリクオートされたからです。

どう戦えばいいんだ? 15pipsなんてどうでもいいんだ。成行で注文を出したいのですが、1秒間の価格変動は関係ないのですか?結果、1. 30858で 開くべきところを、1.30869で 高く開いてしまったのです。 この問題は、シグナルでオープンできず、修正開始を待っている場合、Expert Advisorの収益性/損失にとって致命的となる可能性があります。

ありがとうございます。



証券会社を変えることを強くお勧めします。この証券会社の名前を個人的なメッセージとして送ってもらえますか?
 
tara:

ファックオフ」の大きさは「スリッページ」と呼ばれる注文パラメーターで設定される。あなたの場合は0だったので、見積もりが1ptずれると再見積もりになってしまいます。


そこに1ptがないかのように...作らないでください。
 

ヘロイン

証券会社のことはよくわからないし、Finamと契約していて、モデムで取引しているので、自分の注文がどの証券会社に行くのかわからない......。自分の注文がどこの証券会社に行くのか......その辺はまだよくわからないんです。

自分のスプレッドがどうなっているのか、全く分からない。euでスプレッドが変動しているので、可能性は低いですが15pips以下になる可能性があります。30pipsくらいを考えています。

注文を確定する条件が整った途端、端末がフリーズしてメッセージが表示された

2013.01.10 14:47:45 TradeContext: Pingエラー
2013.01.10 14:48:50 '15082': Pingに失敗しました。

再ログインを何度か試みた後、注文は締め切られました :)

一般的に言えば、トレーディングは楽しいし、自動化されているので、常にエラーを修正しなければなりません :)

 

皆さん、こんにちは。

皆さん、以下のコードで問題を解決する方法をアドバイスしてください。

       double sSup=Sup-(Udal*Point);                           // Sup - это уровень поддержки, Udal - расстояние от него
       zapS=0;
       for(int iS=0; iS<=OrdersTotal(); iS++)                  // перебор открытых ордеров
         {
          if(OrderSelect(iS,SELECT_BY_POS,MODE_TRADES)==true)  // выбор рыночного ордера
            {
             if(OrderSymbol()!=Symb) continue;                 // только нужный инструмент
             if(OrderType()>1) continue;                       // только рыночные
             sPO=OrderOpenPrice();                             // его цена
             sellTip=OrderType();                              // его тип
             if(sPO==sSup && sellTip==1) zapS=1;               // если цена открытого ордера совпадает с sSup и уровень является Sell, то поднять флаг
            }
         }
問題はif(sPO==sup && sellTip==1) zapS=1; という行にある(正確には sPO==sup という断片にある).次の問題:例えば、sPO=1,3100 と sSup=1,3100 の場合、フラグはまだ 0 になります(値 1,3100 はPrint によって両方の値で出力されます)。どこを間違えているのか?zapSが1にならないのはなぜですか?
 
WindSW:

皆さん、こんにちは。

皆さん、以下のコードで問題を解決する方法をアドバイスしてください。

問題はif(sPO==sup && sellTip==1) zapS=1; という行にある(正確には sPO==sup という断片にある).次の問題:例えば、sPO=1,3100 と sSup=1,3100 の場合、フラグはまだ 0 になります(値 1,3100 は Print によって両方の値で印刷されます)。どこを間違えているのか?zapSが1にならないのはなぜですか?


https://www.mql5.com/ru/articles/1561
 
ilunga:

https://www.mql5.com/ru/articles/1561
ありがとうございました。直してみる
 
WindSW:

皆さん、こんにちは。

皆さん、以下のコードで問題を解決する方法をアドバイスしてください。

問題はif(sPO==sup && sellTip==1) zapS=1; という行にある(正確には sPO==sup という断片にある).次の問題:例えば、sPO=1,3100 と sSup=1,3100 の場合、フラグはまだ 0 になります(値 1,3100 は Print によって両方の値で印刷されます)。どこを間違えているのか?zapSが1にならないのはなぜですか?

ここをチェック...
 

こんにちは、私は複数のEAが同時に動作し、1つの注文だけが開き、それらの残りの部分は信号を無視し、何が間違っているのか助言してください理解できません。注文 - マジシャンの注文数を 決定する関数

total=OrdersTotal()。

if(total >=-1 && total ==Orders(symbol,operation,magic))。

 
dimarik0000:

こんにちは、私は複数のEAが同時に動作し、1つの注文だけが開き、それらの残りの部分は信号を無視し、何が間違っているのか助言してください理解できません。注文 - マジシャンの注文数を決定する関数

total=OrdersTotal()。

if(total >=-1 && total ==Orders(symbol,operation,magic))。


この異常な状態は何なんだ!:)

この演算子をロシア語で書いていただければ、文字列を修正するようにします。

 
hoz:
私は、DBLHCとDBHLCという よく知られたプライスアクションのパターンを使う ことを思いつきました。




その形成条件:

DBLHC(ブルセットアップ)- 同じ安値と高い終値を持つバー。
同じ安値を持つ2本(3本以上の場合もある)の連続したバーで、最後の1本の終値が前の1本の終値の最大値より高くなること。隣接するバーの安値の差は3ピップスを超えてはならない。セットアップを構成するバーの数が多ければ多いほど、強い信号を発生させることができます。

DBHLC (弱気セットアップ)- 高値と終値が等しいバー。
同じ最大値を持つ2本(3本以上)の連続したバーで、最後のバーの終値が前のバーの最小値より低い場合。隣接するバーの最大値の差は3ポイント以内でなければならない。セットアップを構成するバーの数が多ければ多いほど、強い信号を発生させることができます。

例えばDBLHC (Bullish Setup)

現在のバーのオープンプライスは、前のバーの最小値に近いはず です。書きやすいんです。しかし、我々が関心を持つのは、同じ最小値、あるいはほとんど同じ最小値を持つバーが複数ある場合、例えば、5である。そんなとき、私たちはどのように仕事をすればいいのでしょうか。前のバーだけでなく、ヒストリーの前のバーも考慮するように、この条件を指定するにはどうしたらよいでしょうか。

過去から現在までのバーをループさせればいいのでしょうね。

そして、次のバーの最小値が前のバーの最小値と同じであれば、さらにそれを比較する...という条件を何らかの形で設定する必要があります。どのように実装するのか?

ここでヒントです。

NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point --- 隣接するバー間の差分です。条件を満たさない場合 → Return(False); (偽を返す)

ループを抜けた後にReturn(False)

違う方法でやればいいんです。

NormalizeDouble(Low[i]-Low[i+1],Digits)<=3*Point の条件が真であれば、隣接するバーのカウンタ(最初は0に等しい)を1だけ増やします。

が偽の場合、隣接するバーカウンターの値を返す。

関数が返す数値が大きければ大きいほど、集合は強くなる。ゼロが返された場合 - セットアップが存在しない。