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

 
fxsaber:

はい。


統計が正しく表示されないのが理解できない。

通常のmt4ファイルとbiblioを開くと、すべての注文がbuylimitとして表示される。

もう少し調べてみる必要がありそうです。

 
Vladislav Andruschenko:

統計情報が正しく表示されないのですが、なぜでしょうか。

履歴が正しく表示されるのは、ヘッジ口座のみです。履歴のネット化については(他の機能は100%動作しています)、できていないですね。

 
fxsaber:

履歴が正しく表示されるのは、ヘッジ口座のみです。ネッティングアカウントの履歴(他の機能は100%動作)は、まだ手をつけていません。


ヘッジ会計でやる時間がない。

OK、何か悪いことをしたのかもしれない、確認してみるよ...

いつも何かをするときは、壁に頭を打ち付けているのですが...。

 
Vladislav Andruschenko:


を生け垣の上に置いて確認しています。

OK、何か間違えたかもしれない、確認する...

いつも何かをするときは、壁に頭を打ち付けているのですが...。

#include <MT4Orders.mqh>

void OnStart()
{
  for (int i = OrdersHistoryTotal() - 1; i >= 0; i--)
    if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY))
      OrderPrint();
}
 
Vladislav Andruschenko:

MT4Ordersは履歴と連動していますか?

履歴からチケット注文を選択したとき、このチケットが保留として発注された時点で記憶 されている場合を除き、動作します。

 
Ilya Malev:

履歴からチケットの注文を選択したとき、そのチケットの注文時に保留として記憶されている場合を除き、動作します。


そこで気づいたのですが、チケットでポジションを選択 する際、若干の遅延が発生するようです。

インジケーターで使うようにしています。

インジケーターで使ってみたのですが、失敗したのかもしれません。どうしたらいいのかわからない。

私はそれを理解しようとしているのです。

 
fxsaber:

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

バグ、バグ、質問

fxsaber, 2019.03.11 18:09

#include <MT4Orders.mqh>

#define Ask SymbolInfoDouble(_Symbol, SYMBOL_ASK)

void OnTick()
{
  if ((int)Ask != Ask) // Дождались дробной цены
  {
    Print(OrderSend(_Symbol, OP_BUY, 1, Ask, 100, 0, 0)); // Тестер не даст сделать BUY по Ask - ошибка TickSize-настроек.
    Print(OrderSend(_Symbol, OP_BUY, 1, 0, 100, 0, 0));   // 0 - прокатит, т.к. настройки символа для маркет-ордеров позволяют.
    
    ExpertRemove();
  }
}
MT4Ordersは、取引要求の 設定に影響を与えません。ユーザーが入力したものが送信されます。MT5-OrderSendと同じです。
2018.12.03 00:56:01   failed market buy 1.00 NI225 [Invalid price]
2018.12.03 00:56:01   -1
2018.12.03 00:56:01   market buy 1.00 NI225 (22489.84 / 22722.15)
2018.12.03 00:56:01   deal #2  buy 1.00 NI225 at 22722.15 done (based on order #2)
2018.12.03 00:56:01   deal performed [#2  buy 1.00 NI225 at 22722.15]
2018.12.03 00:56:01   order performed buy 1.00 at 22722.15 [#2  buy 1.00 NI225 at 22722.15]
2018.12.03 00:56:01   2
2018.12.03 00:56:01   ExpertRemove() function called

テストケースをありがとうございました。ビルドのバージョンは?急いで最新にアップグレードする必要はない(不満が多いので)。このような出力が出るんです。

failed market buy 1.00 NI225 [Invalid price]
-1
failed market buy 1.00 NI225 [Invalid price]
-1
ExpertRemove() function called
では、バグなんですね。テロップをテストから除外する必要がありますね。
 
Stanislav Korotky:

テストケースをありがとうございました。ビルドのバージョンは?急いで最新にアップグレードする必要はない(不満が多いので)。

2007.古いバグが修正され、新しいバグに気づかないので、フレッシュビルドを使用しています。

 
Ilya Malev:

履歴からチケットの注文を選択したとき、そのチケットが保留として発注された時点で記憶 されている場合を除き、動作します。

なぜなら、ポジションの一部がクローズされても、残りの部分はチケットが変更されないというMT5の特徴があるからです。

 
多通貨テスト後に、使用したすべての商品のチャートとその取引を見る方法を教えてください。