MT4 EA の ロスカットの書き方について 教えてください ロスカットの内容は エン…

MT4 EA の ロスカットの書き方について 教えてください
ロスカットの内容は エントリー約定時点での 前1本の足 又は 前数本の足の高値(安値・終値 等を選択)を
基準に設定する場合の書き方について

エントリー約定値の OrderOpenPrice < (又は > ) **** の書き方で良いと思うのですが
その ****の部分の書き方 ? 約定時の1本前の足の高値(又は安値・終値 等 ) と ? 約定時の数本前の足の最高値 (又は 最安値 ・終値の最安値や最高値 等 )の 2つについてお願いします
高値 安値 終値は 記載固定でもパラメータ方式でもどちらでも結構です また 数本前は2〜3本を考えています
今はは OrderOpenPrice()ーLC*Point>=Bid (又は 銘倆蜴熙踉蚕蒼覃の書き方ですが このポイントを
約定時点の前の足の値に変えるのが目的です よろしくお願いします

..[補足]..
xchsshzoさん早速ありがとうございます ?ポジション持った足の1本前の足の高値(安値)をロスカット値にする あるいは レンジブレイクの様な発想です?についてはiCustom使って簡単なものを書くレベルで基礎からの知識が無く能力不足で理解に到りません(申し訳ありません)

回答1

質問自体がよく分からないですが、

?損切り価格にしたいと考えている、その高値や安値の値を割り出す。
?その値を、OrderSend()関数の6番目のパラメーターに、そのまま入れる。

でよいと思うのですが、それではダメなんですか。

>補足

一本前の高値・安値の値は、

double H = High[1];
double L = Low[1];

とすれば算出できますよね。

あとは、新規発注のプログラムにおいて、

ロングなら、

if(ロング条件) int Ticket = OrderSend(Symbol(),OP_BUY,ロット数,Ask,許容スリップ,L,利食い値,NULL,MAGIC,0,BLue);

として、6番目のパラメーターに「L」を入れ、

ショートなら、

if(ショート条件) int Ticket = OrderSend(Symbol(),OP_SELL,ロット数,Bid,許容スリップ,H,利食い値 ,NULL,MAGIC,0,Red);

として、同じく、6番目のパラメーターに「H」を入れます。

そうすれば、いずれも逆指値による決済注文も同時になされたことになるので、あとは、証券会社が自動的に損切りしてくれる、ということです。

ただし、H,Lの値が現在価格と近い場合や、逆転している場合には、無効な逆指値としてエラーになりますが。

参考にしていただければ幸いです。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA