2EMAのクロスEAを作成したのですが、アドバイスが必要です。 - ページ 2

 
prupru:

申し訳ありませんが、私はその部分を理解していませんでした。

このコードを説明できますか?

 int tic = OrderSend(Symbol(),Cmd,Lot,PR,Slippage,SL,TP,"",0,0,clr);
 if(tic < 0) Print("Open order error: ",GetLastError());

... ... 特に変数tic

 

を使用したところ、このようなことが起こりました。

        static datetime Time0;
        if (Time0 == Time[0]) return;
        Time0 = Time[0];

取引はローソクの始値 ではなく、ローソクの内側で行われました。

私はバーを使用する場合は、すべてがうまくいっている

なぜこれが起こるのでしょうか?

 
deVries:

これは正しいとは思えません。

100 pips takeprofit と 150 pips Stoploss を得るにはどうしたらいいのでしょうか?


この市場の値動きは本当に狂っています。

http://bitcoincharts.com/charts/mtgoxUSD#rg60zig6-hourztgSzm1g10zm2g25

一日で500ドルから800ドル、1100ドルから800ドルの値動きがあるこの市場でpipsを使う意味はないのでしょうか?

 
RaptorUK:

このコードについて説明してください。

... ... 特に変数tic


ticは OrderSend関数が返すオーダー番号で、エラーの場合は-1だと思います。

はい!そうです。MT4のヘルプによると、以下の通りです(今、確認しました)。

トレードサーバーが注文に割り当てたチケットの番号を返すか、失敗した場合は-1します。追加のエラー情報を取得 するには、GetLastError() 関数を呼び出す必要が あります。

ということで、何が問題なのでしょうか?

 
prupru:


ticは OrderSend関数が返す注文番号で、エラーの場合は-1だと思います。

Yey!MT4のヘルプによると(今確認しました)、こんな感じです。)

トレードサーバーが注文に割り当てたチケットの番号を返すか、失敗した場合は-1します。追加のエラー情報を取得 するには、GetLastError() 関数を呼び出す必要が あります。

それで、何が問題なのですか?

何も、あなたは理解できないと言いましたね.

prupru

申し訳ありませんが、私はその部分を理解していませんでした。

... ... 多分あなたは今理解していますか?

私はあなたがこのコードを書かなかったと思います .. .

 
deVries:

update see"ストップロスやテイクプロフィットはピップスではなく、ビッドやアスクのパーセンテージで表示されます。"

シンボルが5桁の場合、結果はしばしば2桁多くなります。

OK、それは理解できます)

ということで、Ask*Takeprofit/100の 桁を正規化する必要があり、Askと同じ桁に なるようにします。

 
RaptorUK:

何も、あなたは理解していないと言いました ... ...

... ... 多分あなたは今理解していますか?

私はあなたがこのコードを書かなかったと思います .. .


あなたの言うとおりです。私はこのコードをすべて頭から書いたわけではなく、インターネット上でさまざまな例で見つけることができた断片を組み合わせただけです。

しかし、当初は次のように考えていました。

"誰かに促されることなく 関数の 戻り値をチェックするのを見るのは良いことだ ... "

というのは皮肉で、私のミスを指摘しているのだと思いました。

まあ、気にしないでください、そしてもう一度あなたの助けに感謝します。

 
prupru:

を使用したところ、このようなことが起こりました。

取引はローソクの始値ではなく、ローソクの内側で行われました。

私はバーを使用する場合は、すべてがうまくいっている

なぜこのようなことが起こるのでしょうか?


ローソクの初値は 買値

買い取引の開始価格は売値です。

 
deVries:


ローソク足の始値は買値です。

買い取引の開始価格は売値です。


となりますが、時間軸とバーで注文を出すタイミングを決めても同じはずですが、なぜ違うのでしょうか?
 
prupru:

でも、時間やバーで注文を出すタイミングを決めても同じはずなのに、なぜ違うのでしょうか?


現在のスプレッドでテストした場合、これは非常にクレイジーな動き なので、スプレッドは非常に大きくなる可能性があります。

で、どうやってテストしたんだ?

固定スプレッドか、現在のスプレッドか?