コーディングの方法は? - ページ 227

 

こんにちは、私はスクリプトコードの専門家からいくつかの助けを必要とする.私は次のように保留中の順序の 2つのセットをコード化したい。

セット1

保留中の注文

GBPUSD ( 買いストップ ) ,

EURUSD ( buy stop ),

AUDUSD (buy stop),

NZDUSD (買いストップ),

USDJPY (sell stop),

USDCAD (sell stop),

USDCHF (売りストップ)

セット2

保留中の注文

GBPUSD ( sell stop ) ,

EURUSD ( sell stop ),

AUDUSD (sell stop),

NZDUSD (sell stop),

USDJPY (買いストップ),

USDCAD (買いストップ),

USDCHF (買いストップ)

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

 

トレーリングストップのコードと買いのコードですが、この中に問題がありそうな気がしますが、よくわかりません......。

//トレーリングストップ

if(UseTrailingStop && TrailingStop > 0) { (トレーリングストップ)

if((OrderOpenPrice() - Ask) > (Point * (TrailingStop+0.5))){

if((OrderStopLoss() > (Ask + Point * (TrailingStop+0.5)))|| (OrderStopLoss() == 0) { { (OrderStopLoss() > (Ask + Point * (TrailingStop+0.5)))

OrderModify(OrderTicket(), OrderOpenPrice(), Ask + Point * TrailingStop, OrderTakeProfit(), 0, DarkOrange);

if (!EachTickMode) BarCount = Bars;

を続けます。

//買い

if (注文 == SIGNAL_BUY && ((EachTickMode && !TickCheck) || (!EachTickMode && (Bars != BarCount)))){

if(DecideToOpenTrade(OP_BUY) && TradeSlotsAvailable()) { {

if (UseStopLoss) StopLossLevel = Ask - StopLoss * Point; else StopLossLevel = 0.0;

if (UseTakeProfit) TakeProfitLevel = Ask + TakeProfit * Point; else TakeProfitLevel = 0.0。

Ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, Slippage, StopLossLevel, TakeProfitLevel, "Buy(#" + MagicNumber + ")", MagicNumber, 0, DodgerBlue)。

if(チケット > 0) {

if (オーダーセレクト(チケット、SELECT_BY_TICKET、MODE_TRADES)) {

Print("BUY order opened : ", OrderOpenPrice());

if (SignalMail) SendMail("[Signal Alert]", "[" + Symbol() + "] " + DoubleToStr(Ask, Digits) + " Open Buy")。

} else {

Print("買い注文の開始エラー :", GetLastError());

}

if (EachTickMode) TickCheck = True;

if (!EachTickMode) BarCount = Bars;

return(0);

 

EAがトレードを開始しない......。??

私のEAに問題があります。トレーリングストップを使用しているときはうまく取引ができるのですが、トレーリングストップとストップロスを一緒に使おうとすると、取引ができません。バックテストでは 問題なく動作しますが、チャート上では実際の取引を開始することができません。私は5ピップのトレーリングストップと200ピップのストップロスを実行しようとしています。何かご意見はありますか?必要であれば、オープントレードのコードを投稿することもできます。

ありがとうございます。

 

エラーコードについては、Expertsタブをご確認ください。

 

そうしました、エラーはありません。トレーリングストップとストップロスを有効にしているときに取引を開始しようとすると、何も表示されません。トレーリングストップだけのときは、通常のようにタブにすべてのトレードがあります。

 

時間単位は秒かmsか?

こんにちは、私はmt4のための特定の時間文字列を探していた、これを見つけた。

もし((CurTime()-OrderOpenTime()>300))

この300は、300秒なのか、ミリ秒なのか、それとも何なのでしょうか?

ありがとうございます。

 

MT4のDatetime変数は、内部的には長整数値、つまり4バイト(2^32)整数値として格納されており、エポックからの経過秒数を表します。

ご質問の回答としては、300秒となります。

 

このコードは私が必要とすることをやってくれるでしょうか?

このコードで、私の戦略に必要なCCIの上のRSIを得ることができるでしょうか?

CCIから「前の指標のデータ」を使ってRSIを読み取るEAが必要なのです。

double Buy1_1 = iCCI(NULL, 0, 10, PRICE_OPEN, Current + 0);

double Buy2_1 = iRSI(NULL, 0, 3, 7, Current + 0);

 

指定した時間範囲の高値/安値を返す?

皆さんこんにちは、長いこと潜伏していますが、初めて投稿します。

もし、間違ったセクションに投稿していたら、申し訳ありません。私は指定された時間範囲の高値/安値を返す方法を決定しようとしています。

次のような方法で快適に過ごしています。

iLow(NULL, PERIOD_D1, 0);

しかし、私がやろうとしていることは、例えば前日の23:00から当日の6:00までの範囲を指定し、23:00が再び巡ってくるまでその範囲を変数として保持することです。

これについて何かご指導いただければ幸いです。ありがとうございます。

 

MQL4文字列の書式設定

文字列を右寄せにするために、左寄せにする'˶'ᵕ'̮'˶を試しました。しかし、スペースが足りません。MQL4でこれを行う良い方法をご存知の方はいらっしゃいますか?