エラー、バグ、質問 - ページ 1916

 

サービスデスクが申し込みに応じなくなったのはなぜですか?あなたのアプリケーションは審査に合格しました」というメッセージが表示され、その後、沈黙が 続くだけです。ノーコメント、ノー質問、ノーリザルト。この1ヶ月の間に、バグや提案など、さまざまなトピックで、このようなリクエストが たくさん寄せられました。誰かが全く相手にしていないのか、それとも相手にしていないのか不明である。以前は、必ず対話の形式があったのですが、今は何があるのか不明です。誰も必要としないのであれば、そこに書く意味は全くない。

 

EAがインストールされていない別のチャートからイベントを取得するには?

ps. 全て解決しました、ブロードキャストメッセージを送るのを忘れていました ))
 

開発者へのお願いです。

こんな面白いものがあるんだ。私は通常、最適化の後にスタートを押し、MT4のExpert Advisorで習慣的にいくつかのパラメータを変更します。

問題は、数時間ストラテジーをテストした後、最適化から切り替えなかった場合、結果が失われてしまうことです

MT4のようにシングルテストオプションを変更することは可能ですか?

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

 
ストラテジーテスターの ビジュアライゼーションでは、現在の履歴が(2番目の取引から)遅れて開き、取引または注文に切り替えて戻るまで、または1-2回の取引の後に更新されます。
 
Anton Ohmat:
ストラテジーテスターの ビジュアライゼーションでは、現在の履歴が(2番目の取引から)遅れて開き、取引または注文に切り替えて戻るまで、または1-2回の取引の後に更新されます。

巻き戻し速度を最高速度からマイナス3段に設定する。また、チャート上に「コメント」を出力している可能性があります。「コメント」は、最大値に近い巻き取り速度で常にテスターの更新情報をフリーズさせます。


 
Anton Ohmat:
Strategy Testerのストラテジー 表示では、現在の履歴は、取引または注文に切り替えてから戻るまで、または1-2取引で更新されるまで、(2取引目から)遅れて表示されます。

要求あり(返信なし)

トレーディング、自動売買システム、トレーディング戦略のテストに関するフォーラム

バグ、バグ、質問

fxsaber さん 2017.06.07 22:33

取引環境GUIでヒストリーのデバッグ(スピードスライダー-最大)を行うと、現実と一致しない。
#include <Trade\Trade.mqh>

input int Interval = 3600;
input int AmountLastDeals = 5;
input double Lots = 1;

double CorrectLot( const double Lot )
{
  static const double StepVol = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_STEP);
  static const double MaxVol = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MAX);
  static const double MinVol = SymbolInfoDouble(_Symbol, SYMBOL_VOLUME_MIN);
  
  const double Vol = StepVol * (int)(Lot / StepVol + 0.5);
  
  return((Vol < MinVol) ? MinVol : ((Vol > MaxVol) ? MaxVol : Vol));
}

void OnTick()
{
  static CTrade Trade;
  static CDealInfo Deal;
  static CPositionInfo Position; 

  if (!Position.Select(_Symbol))
  {
    if (HistorySelect(0, TimeCurrent()))
    {
      const int Total = HistoryDealsTotal() - 1;

      double SumProfit = 0;
      double SumLots = 0;

      for (int i = Total, Count = 0; (i >= 0) && (Count < AmountLastDeals); i--)
        if (Deal.SelectByIndex(i) && (Deal.Entry() == DEAL_ENTRY_OUT))
        {        
          SumProfit += Deal.Profit() * (AmountLastDeals - Count) / AmountLastDeals;
          SumLots += Deal.Volume() * (AmountLastDeals - Count) / AmountLastDeals;
          
          Count++;
        }

      if (Total == 2)
      {
        string Str;
        
        for (int i = Total; i >= 0; i--)
          if (Deal.SelectByIndex(i))
            Print(Deal.FormatDeal(Str));
        
        DebugBreak();
      }

      if ((Total >= 0) && Deal.SelectByIndex(Total) && (Deal.DealType() == DEAL_TYPE_SELL))
        Trade.Sell((SumProfit >= 0) ? Lots : CorrectLot(SumLots));
      else
        Trade.Buy((SumProfit >= 0) ? Lots : CorrectLot(SumLots));
    }       
  }
  else if (TimeCurrent() - Position.Time() >= Interval)
    Trade.PositionClose(_Symbol);
}
DebugBreak発生時のログ
2017.06.07 23:29:03.554 EURUSD : real ticks begin from 2017.04.10 00:00:00
2017.06.07 23:29:03.564 2017.04.10 00:00:00   instant buy 1.00 EURUSD at 1.05918 (1.05885 / 1.05918)
2017.06.07 23:29:03.564 2017.04.10 00:00:00   deal #2 buy 1.00 EURUSD at 1.05918 done (based on order #2)
2017.06.07 23:29:03.564 2017.04.10 00:00:00   deal performed [#2 buy 1.00 EURUSD at 1.05918]
2017.06.07 23:29:03.564 2017.04.10 00:00:00   order performed buy 1.00 at 1.05918 [#2 buy 1.00 EURUSD at 1.05918]
2017.06.07 23:29:03.566 2017.04.10 00:00:00   CTrade::OrderSend: instant buy 1.00 EURUSD at 1.05918 [done at 1.05918]
2017.06.07 23:29:03.569 2017.04.10 01:00:00   instant sell 1.00 EURUSD at 1.05833 (1.05833 / 1.05845 / 1.05831)
2017.06.07 23:29:03.569 2017.04.10 01:00:00   deal #3 sell 1.00 EURUSD at 1.05833 done (based on order #3)
2017.06.07 23:29:03.569 2017.04.10 01:00:00   deal performed [#3 sell 1.00 EURUSD at 1.05833]
2017.06.07 23:29:03.569 2017.04.10 01:00:00   order performed sell 1.00 at 1.05833 [#3 sell 1.00 EURUSD at 1.05833]
2017.06.07 23:29:03.570 2017.04.10 01:00:00   CTrade::OrderSend: instant sell 1.00 EURUSD at 1.05833 [done at 1.05833]
2017.06.07 23:29:03.570 2017.04.10 01:00:00   #3 sell 1.00 EURUSD at 1.05833
2017.06.07 23:29:03.570 2017.04.10 01:00:00   #2 buy 1.00 EURUSD at 1.05918
2017.06.07 23:29:03.570 2017.04.10 01:00:00   CSymbolInfo::CheckMarketWatch: Unknown symbol ''
2017.06.07 23:29:03.570 2017.04.10 01:00:00   #1 balance 100000.00 []
スクリーンショット


GUIにLast Tradeが表示されない。1596-1606で再現。

 
fxsaber:

BODに申請書がぶら下がっています

これまで何度も言われてきたことですが、ビジュアルテスターの最高速スライダーでは、真実を探すな、ということなんです。GUIが100%詰まってしまい、多くのコンポーネント(主にシートコントロール)の更新ができなくなる
 
Slava:
これまで何度も言われてきたことですが、ビジュアルテスターの最高速スライダーでは、真実を探すな、ということなんです。GUIが100%詰まっていて、多くのコンポーネント(主にシートコントロール)が更新できない。

CDでは、100%再生でのデバッグについて語られています。

 
Slava:
これまで何度も言われてきたことだが、ビジュアルテスターのスピードスライダーの最大値では、真実を探すことはできない。GUIが100%詰まっていて、多くのコンポーネント(主にリーフコントロール)が更新できない
スピードはMAXではありません。一時停止中。f12を押すとこのようになります。f12を押しても何も起こらない、履歴が更新されない。
 
Anton Ohmat:
速度は最大値ではありません。一時停止中。f12を押すと、このような現象が起こります。f12を離すと、やはり何も起こらない、履歴が更新されない

最大速度からマイナス3ステップの速度を設定します。そうしないとインターフェースの更新が保証されません。