MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 - ページ 528 1...521522523524525526527528529530531532533534535...1953 新しいコメント YanSay 2018.04.13 15:21 #5271 Alexey Viktorov:ただ、それだけです。 ありがとうございます!ちょうどいい感じです YanSay 2018.04.14 13:52 #5272 こんにちは。 この問題についてアドバイスをお願いします。 保留中の注文を 出す。 bool send1=OrderSend(Symbol(),OP_BUYSTOP,Lots,Price,3,SL,TP,NULL,MagicNumber,0,clrGreen); そして、オープンした後にトレーリングストップをかけるようにしています。 { for(int i=0; i<OrdersTotal(); i++) { if(OrderSelect(i,SELECT_BY_POS)) if(OrderSymbol()==Symbol()||OrderMagicNumber()==MagicNumber) if(OrderType()==OP_BUY) { if(TrailingStop>0) { if(Bid-OrderOpenPrice()>TrailingStop) { if(OrderStopLoss()<Bid-TrailingStop) { OrderModify(OrderTicket(),OrderOpenPrice(),Bid-TrailingStop,OrderTakeProfit(),0,clrRed); } } } } } } オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは? Maxim Kuznetsov 2018.04.14 14:11 #5273 YanSay:こんにちは。 この問題についてアドバイスをお願いします。 保留中の注文を 出す。 そして、オープンした後にトレーリングストップをかけるようにしています。 オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは? 100500の理由。まず明らかなのは、Bid-TrailngStopが正規化されていないことです。さらにストッパーレベルに近づいて、しかも不透明になる可能性もあります。 Vladislav Andruschenko 2018.04.14 14:21 #5274 YanSay:こんにちは。 この問題についてアドバイスをお願いします。 保留中の注文を 出す。 そして、オープンした後にトレーリングストップをかけるようにしています。 オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは? TrailingStopをpipsで表すと? Pointを掛けると。 YanSay 2018.04.14 18:20 #5275 質問を間違えてしまいました、すみません。文脈から取り出される。 特にトレイリングコードをテストするために、取引は開いたが、トレイリングが動作しません、私はそれを回す方法はありません、膠着状態( //Вводные #define MagicNumber 150 double SL=0; //Stop Loss input int Trailing=100; //Трэйлинг //Код void OnTick() { if (OrdersTotal()==0) { if(TimeCurrent()>StrToTime("17:59")&&TimeCurrent()<StrToTime("18:01")) { SL = Low[1]-Point; //Стоп лосс bool send1=OrderSend (Symbol(), OP_BUY,1,Bid,30,SL,0,NULL,MagicNumber,0,clrNONE); } } if (OrdersTotal()>0) { for (int i=0; i<OrdersTotal (); i++) { bool select1=OrderSelect (i, SELECT_BY_POS); if (OrderMagicNumber() == MagicNumber && OrderSymbol () == Symbol()) { if (OrderType()==OP_BUY) { if (NormalizeDouble(Ask-OrderStopLoss(),Digits)>NormalizeDouble(Trailing,Digits)) bool modify1=OrderModify (OrderTicket(),0,Ask-Trailing,OrderTakeProfit(),0,CLR_NONE); } } } } } Vladislav Andruschenko 2018.04.14 19:20 #5276 YanSay:質問を間違えてしまいました、すみません。文脈から取り出される。 特にトレイリングコードをテストするために、取引は開いたが、トレイリングが動作しません、私はそれを回す方法はありません、膠着状態( 上記のご質問にお答えします。 YanSay 2018.04.14 21:13 #5277 Vladislav Andruschenko: 上記のご質問にお答えします。 ありがとうございました!助かりました。 Artyom Trishkin 2018.04.14 21:16 #5278 YanSay: ありがとうございました!助かりました。まだそこに問題があるんですね。 ループが順方向になっていますが、逆方向であるべきです。順方向では、トロールで片方が閉じた後にポジションがスキップされます ストップ距離(StopLevel)のチェックはありません。ストップが許容される最小距離よりも価格に近い場合、修正エラーが 発生します(フローティングスプレッドについて忘れないでください)。 もしかしたら、すでに言われていることなので、一応、他のもの-斜めに見た-もあるかもしれません。 ZS.もう一度見た。 if (NormalizeDouble(Ask-OrderStopLoss(),Digits)>NormalizeDouble(Trailing,Digits))というのは、両方の値を正規化した上でチェックすると、その結果が再び正規化されないという、正規化によるチェックの意味そのものを欠くようなチェックになってしまうからです。 2つのダブル値の正規化された差を 確認する必要があります。正規化された2つの値を比較することになります。 YanSay 2018.04.14 21:39 #5279 Artyom Trishkin:まだそこに問題があるんですね。 ループは順方向です。逆方向でなければなりません。順方向のループでは、トロールの1つが閉じた後、ポジションがスキップされます ストップ距離(StopLevel)のチェックはありません。ストップが許容される最小距離よりも価格に近い場合、修正エラーが 発生します(フローティングスプレッドについて忘れないでください)。 もしかしたら、すでに言われていることなので、一応、他のもの-斜めに見た-もあるかもしれません。 ZS.もう一度見た。 というのは、両方の値を正規化した上でチェックすると、その結果が再び正規化されないという、正規化によるチェックの意味そのものを欠くようなチェックになってしまうからです。 2つのダブルバリューの差を正規化 したものを確認する必要があります。正規化された2つの値を比較することになります。 こんな感じ? for (int i = OrdersTotal() - 1; i >= 0; --i) if (NormalizeDouble((Ask-OrderStopLoss()>Trailing*Point),Digits)) Juer 2018.04.15 01:52 #5280 the size of local variables is too large (more than 512 kb) このエラーは何を意味するのでしょうか? 2つのオブジェクトを持つ関数があります。 bool CheckCandleOneRules(CCandlePropertiesBase *candle, CCandleRule *rule, int dir);あるクラスは4000以上のフィールド(ほとんどがenum)を持つ構造を持っています。 このエラーはどうしたらいいのでしょうか? 1...521522523524525526527528529530531532533534535...1953 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
ただ、それだけです。
ありがとうございます!ちょうどいい感じです
こんにちは。
この問題についてアドバイスをお願いします。
保留中の注文を 出す。
そして、オープンした後にトレーリングストップをかけるようにしています。
オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは?
こんにちは。
この問題についてアドバイスをお願いします。
保留中の注文を 出す。
そして、オープンした後にトレーリングストップをかけるようにしています。
オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは?
こんにちは。
この問題についてアドバイスをお願いします。
保留中の注文を 出す。
そして、オープンした後にトレーリングストップをかけるようにしています。
オープン後、注文はOP_BUYになりますか?この場合、なぜトレイリングが効かないのか、そのコツは?
質問を間違えてしまいました、すみません。文脈から取り出される。
特にトレイリングコードをテストするために、取引は開いたが、トレイリングが動作しません、私はそれを回す方法はありません、膠着状態(
質問を間違えてしまいました、すみません。文脈から取り出される。
特にトレイリングコードをテストするために、取引は開いたが、トレイリングが動作しません、私はそれを回す方法はありません、膠着状態(
上記のご質問にお答えします。
ありがとうございました!助かりました。
まだそこに問題があるんですね。
ループが順方向になっていますが、逆方向であるべきです。順方向では、トロールで片方が閉じた後にポジションがスキップされます
ストップ距離(StopLevel)のチェックはありません。ストップが許容される最小距離よりも価格に近い場合、修正エラーが 発生します(フローティングスプレッドについて忘れないでください)。
もしかしたら、すでに言われていることなので、一応、他のもの-斜めに見た-もあるかもしれません。
ZS.もう一度見た。
というのは、両方の値を正規化した上でチェックすると、その結果が再び正規化されないという、正規化によるチェックの意味そのものを欠くようなチェックになってしまうからです。
2つのダブル値の正規化された差を 確認する必要があります。正規化された2つの値を比較することになります。
まだそこに問題があるんですね。
ループは順方向です。逆方向でなければなりません。順方向のループでは、トロールの1つが閉じた後、ポジションがスキップされます
ストップ距離(StopLevel)のチェックはありません。ストップが許容される最小距離よりも価格に近い場合、修正エラーが 発生します(フローティングスプレッドについて忘れないでください)。
もしかしたら、すでに言われていることなので、一応、他のもの-斜めに見た-もあるかもしれません。
ZS.もう一度見た。
というのは、両方の値を正規化した上でチェックすると、その結果が再び正規化されないという、正規化によるチェックの意味そのものを欠くようなチェックになってしまうからです。
2つのダブルバリューの差を正規化 したものを確認する必要があります。正規化された2つの値を比較することになります。
こんな感じ?
the size of local variables is too large (more than 512 kb)
このエラーは何を意味するのでしょうか?2つのオブジェクトを持つ関数があります。
あるクラスは4000以上のフィールド(ほとんどがenum)を持つ構造を持っています。
このエラーはどうしたらいいのでしょうか?