プログラミングを勉強したことはないけれど、EAを書きたい。 - ページ 5

 
Sergey Lobzankin:

親愛なるKonstantin!!!
でも、申し訳ないけど、コードを完全に壊すわけにはいかない。

本気ですか?

昔からここに書かれていることで、どんな戦略も5回は書き直されている。私はいつも、「新しいものはすべて、長い間忘れられていた古いものである」という表現を覚えています。

ストラテジーをレイアウトする必要はなく、あるインディケータを別のインディケータに置き換えたり、メイン条件の代わりにHigh[1] > Low[0]を代用するだけでよいのです。

 
Sergey Lobzankin:

親愛なるKonstantin!!!
でも、申し訳ないけど、コードを完全に失うわけにはいかないんだ。それで、TSストラテジーを書いて売ったんですか? 私はあなたの助言を求めたし、これからもそうしますよ。

すると、次のような感じになります。

void  Trailig(double ATR)
{
  int stopLevel = (int)SymbolInfoInteger(_Symbol, SYMBOL_TRADE_STOPS_LEVEL)+1;
  for(int i = OrdersTotal()-1; i>=0; i--)
  {
    if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES))
    {
      if(OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
      {
        if(OrderType() == OP_BUY)
        {
          double stoploss = NormalizeDouble( (Bid - MathMax( TrailingStop, stopLevel)*Point), Digits);
          if(OrderStopLoss() < stoploss || OrderStopLoss() == 0)
          {
            if(StopLoss == SL)          // Параметры не известны, поэтому сказать ни чего не возможно
            {
              if(OrderStopLoss() == SL) // Параметры не известны, поэтому сказать ни чего не возможно
              {
                double takeprofit = NormalizeDouble( (Bid+MathMax( 3,stopLevel)*ATR),Digits);
                if(!OrderModify(OrderTicket(), OrderOpenPrice(), stoploss, takeprofit/*takeprofit*/, 0))
                  Print("Ошибка модификации ордера на покупку!");
              }
            }
          }
        }
      }
    }
  }
}

またはアナログ

void  Trailig(double ATR)
{
  int stopLevel = (int)SymbolInfoInteger(_Symbol, SYMBOL_TRADE_STOPS_LEVEL)+1;
  for(int i = OrdersTotal()-1; i>=0; i--)
  {
    if(!OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) continue;
    if(OrderSymbol() != _Symbol) continue;
    if(OrderMagicNumber() != Magic) continue;
    if(OrderType() != OP_BUY) continue;
    
    double stoploss = NormalizeDouble( (Bid - MathMax( TrailingStop, stopLevel)*Point), Digits);
    if(OrderStopLoss() > stoploss && OrderStopLoss() > 0) continue;
    if(StopLoss != SL) continue;        // Параметры не известны, поэтому сказать ни чего не возможно
    if(OrderStopLoss() != SL) continue; // Параметры не известны, поэтому сказать ни чего не возможно
    double takeprofit = NormalizeDouble( (Bid+MathMax( 3,stopLevel)*ATR),Digits);
    if(!OrderModify(OrderTicket(), OrderOpenPrice(), stoploss, takeprofit/*takeprofit*/, 0))
      Print("Ошибка модификации ордера на покупку!");
  }
}
 
Konstantin Nikitin:

すると、次のような感じになります。

またはその類縁体


、ほとんどわかった。
私が引用したコードの条件は、決して、またはほとんどない
youtubeからコピーし、私の値を代入し、この結果である。
チェック、チェック、もう一度。

質問してもいいですか?あなたは主にロボットシグナルを販売していますか?マニュアル取引 ではないのですか?

 
Sergey Lobzankin:

親愛なるKonstantin!!!
でも、申し訳ないけど、コードを完全に失うわけにはいかないんだ。それで、TSストラテジーを書いて売ったんですか? 私はあなたのアドバイスを求めたし、そうし続けている。

セルゲイさん、本当に現地のプログラマーを驚かせることができると思っているのでしょうか?彼らはすでにすべての戦略を異なるバリエーションで何度も書いており、もし彼らが焦土化することが不可能なほど多くのお金を出すとしたら......。プログラマーは皆、自分たちの島の陽のあたる場所に住んでいるはずだ。

 
Alexey Viktorov:

セルゲイさんへ、現地のプログラマーが驚くようなことがあると本当に思っているのですか?彼らはすでに何度もすべての戦略を別のバリエーションで書いているし、そんなに焦げ付いてはいけないものを出しても......。プログラマーは皆、自分たちの島の陽のあたる 場所に住んでいるはずだ。

そこではインターネットも携帯電話も使えないので、みんなここで、つまりフォーラムで生活しています =)。

 
Sergey Lobzankin:

わかったよ みんなごめんよ コードが全部なくなっちゃうよ じゃあ、ストラテジーを書いて売ればいいのか? アドバイスを求めたのに、まだやってるんだよ。

TSを過大評価しすぎです。

年分の履歴のある本物のアカウントを 見せるまでは、誰も欲しがらないだろう。

 
Vitaly Muzichenko:

現地ではインターネットも携帯電話も使えないので、みんなここで生活しています - フォーラムで =)

衛星はどこでも使えるんですね(^^))))

 
Vitaly Muzichenko:

インターネットも携帯電話も使えないので、みんなここで生活しています。)

そのお金があれば、発電機と衛星回線、つまりインターネットを買うことができるわけです。

 
Sergey Lobzankin:

質問なのですが、ロボットのシグナルを主に販売されているのでしょうか?

すべてのシグナルは専門家の手によるものです。MT5でも、100%アルゴトレードと表示されないが、実際は100%である。Expert Advisorが設定したSLでのポジショントリガーを手動取引と みなすローカル統計の計算の不具合です。

 
Konstantin Nikitin:

*** Expert Advisor がトリガーする SL 取引は、手動取引としてカウントされます。

これを確認するために、SLで発動したトレードのマジックナンバーを見る価値があります。間違っていなければ、"0 "がつくはずです。