if(Ask - iOpen(NULL,0,0)>=Delta*Point)//Цена выросла на больше или = Delta пунктов{ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,Bid-StopLoss*Point,Ask+TakeProfit*Point,
"Купил",MagicNumber,11111,Green);
if(ticket<0){Print("Ошибка открытия ордера BUY #",GetLastError());return(0);}}
いいえ、そんなことはありません。販売したときは、ちゃんと書いてあったようですが。私が書いたように、まず購入だけ直して、どう動くかを確認するのです。
以下はコードの全体像です......
コードを少し変更し、extern int Deltaとしました。
例えば、StopLoss=49; TakeProfit=37; Delta=-32の場合、システムは2007年の分単位で利益を出します。最適化はまだ終わっていませんし、完成を待つつもりはありません。しかし、原理的にはうまくいくかもしれません。しかし、いくつかの追加フィルターを行う必要があります。オープン時間、同時にオープンした注文の数、現在のボラティリティ。最適化のために多くのパラメータを選択することができます。しかし、このシステムが将来も使えるかどうかは、複雑な問題です。
どうすればいいのか?:))))
私の考えるこのEAは、プルバックで利益を出すというものですが・・・。
ポンドを研究していると、下げも上げも急激なジャンプで必ず5~15pipsロールバックするんですよね・・・。 私はt/rが3pipsしかないんですけど。まだ手でS/Lを釣ったことがない。
買い:新しいローソク足が開き、価格が上昇する - すなわち、買い価格はデルタ=30でオープン価格を上回る必要があります。
i.e. if (Ask -iOpen(NULL,0,0)>=Delta*Point) is the best !
今度は同じようにSellを推論してください。
新しいローソク足が開き、価格が下がる。そして、我々は、ろうそくのオープン価格が売値よりも30ピップ高い場合は、販売しています。
if ( iOpen(NULL,0,0)- Bid >=Delta*Point)
これがコードの全体像です......。
コードを少し変更し、extern int Deltaとした。
そして、ここでのデルタは、当然ながら外部パラメータである必要があるのですが......。
これがコードの全体像です......。
コードを少し変更し、extern int Deltaとした。
そして、ここでのデルタは、当然ながら外部パラメータである必要があるのですが......。
そう書きました。オプションとして設定する注文の種類を選択するだけでいいのですが。一方はリミッター、もう一方はストップ。そして、パラメータを選択する必要があります。しかし、これは歴史の修正となる。
買い:新しいローソク足が開き、価格が上昇する - すなわち、買い価格はデルタ=30でオープン価格を上回る必要があります。
i.e. if (Ask -iOpen(NULL,0,0)>=Delta*Point) is the best !
今度は同じようにSellを推論してください。
新しいローソク足が開き、価格が下がる。そして、我々は、ろうそくのオープン価格が売値よりも30ピップ高い場合は、販売しています。
if ( iOpen(NULL,0,0)- Bid >=Delta*Point)
よくない、Open, Slose, High, LowはBidを基準にしており、一方のケースをBidで、他方をAskで比較すると、非対称になってしまう。
(クソ劇場)))))。マイナスを忘れていたことが判明))) ここに目から鱗が落ちるようなものがあるのは良いことだ)。