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

 
AlexInRush:

みなさん、こんにちは。

Fortsのスタックオーダーで取引するロボットのデバッグ方法を教えてください。実行エミュレーションモードでカップの履歴を再生したり、実データを扱うツールはないのでしょうか?実際のアカウントでprintや commentを使ってデバッグするしかないと思うのですが、それは決して安くはないですよね :(

市場にもあるんですよ。コドベースの方はないようです。

 
Stanislav Korotky:

市販されているものもあります。コドバシにはないと思います。

こんにちは、スタニスラフさん。

OrderBook History Libraryの説明を読みました。私の理解が正しければ、このライブラリをロボットに接続すると、タンブラーからの通常のイベントをエミュレータからのイベントに置き換えることができるのです。テスターでストラテジーを 再生すると、チャンネルの履歴放送がテスターのティック履歴と同期して表示されます。従って、実行のエミュレーションは、テスターのチック履歴をもとに行われることになる。私の理解が正しければ、これが私が求めていたものだと思わ れます。ありがとうございます!試してみます。

 
AlexInRush:

こんにちは、スタニスラフさん。

OrderBook History Libraryの説明を読みました。私の理解が正しければ、このライブラリを私のロボットに接続すると、テスターからのイベントをエミュレータからのイベントに置き換えることができます。テスターでストラテジーを 再生すると、チャンネルの履歴放送がテスターのティック履歴と同期して表示されます。従って、実行のエミュレーションは、テスターのチック履歴をもとに行われることになる。私の理解が正しければ、これが私が求めていたものだと思わ れます。ありがとうございます!試してみます。

フォーラムでは、製品について言及したり、議論したりすることはできません。製品に関するご質問は、直接お手紙でお願いします。

 

グラフィカルなリソースの作成で、不思議なことを発見しましたMQL5で書かれた同じコードが完璧に動作し、MQL4では全く動作しません。すべてがまったく同じで、シンプルな印象です。

    string path="::Images\\AAA.bmp";
    string path1="\\Images\\AAA.bmp";

    if(!ResourceCreate(path,path1))
     {
      Print(__FUNCTION__+", Error="+string(GetLastError()));
      return(false);
     }

その結果、Metatrader 4のチャートにインジケータを インストールすると、次のようになります。

どこに問題があるのか?

Документация по MQL5: Операции с графиками / ChartIndicatorAdd
Документация по MQL5: Операции с графиками / ChartIndicatorAdd
  • www.mql5.com
//| Expert initialization function                                   |                                                                                       ); "Внимание! %s: Попробуем добавить индикатор MACD(%s/%s) на график %s/%s. Получим ошибку 4114"                         subwindow...
 
Nikolay Kositsin:

グラフィカルなリソースの作成で、不思議なことを発見しましたMQL5で書かれた同じコードが完璧に動作し、MQL4では全く動作しません。すべてがまったく同じで、シンプルな印象です。

その結果、Metatrader 4のチャートにインジケータを インストールすると、次のようになります。

どこに問題があるのか?

はい、MT4では動作しません。
しかし、この短い構造でMT5とMT4の両方で動作します。

#resource  "\\Images\\AAA.bmp"
string path="::Images\\AAA.bmp";

uint bmp[], w,h;
ResourceReadImage(path,bmp,w,h);

ファイル:
Morph.mq4  9 kb
iCanvas.mqh  49 kb
Images.zip  731 kb
 
Nikolai Semko:

はい、MT4では動作しません。
しかし、この短いデザインでMT5とMT4の両方で動作します。


感謝しますが、残念なことに、このような構造はコンパイル時にしか画像を読み込まず、一方、私は仕事中にコンパイルしたファイルで読み込まなければならないのです。では、MQL4のResourceCreate()関数は どうにもならないのでしょうか?もしかしたら、開発者が忙しさにかまけて、そのためのコードを追加するのを忘れてしまっただけかもしれません。

Документация по MQL5: Общие функции / ResourceCreate
Документация по MQL5: Общие функции / ResourceCreate
  • www.mql5.com
[in]  Относительный путь к файлу, содержащему данные для ресурса. Если путь начинается с обратной косой черты "\" (пишется "\\"), то файл ищется относительно папки Если второй вариант функции вызывается для...
 
このトピックに関連しないコメントは、「MQL4 MT4 MetaTrader 4初心者からの質問」に移動しました。
 
Nikolay Kositsin:

ありがとうございます。しかし、残念ながら、このような構造は、実行時にコンパイルされたファイルに読み込まれるべきなのですが、コンパイル時にしか画像を読み込まないのです。では、MQL4のResourceCreate()関数は 何ら機能しないのですか?もしかしたら、開発者がイベントの混乱でコードを追加し忘れただけなのでは?

おそらく。
つい最近、ResourceReadImageを修正したそうです。
 
エラーメッセージは ありません。
class B {
enum E { function };
        void function() {} //нормально ???
        void g() { function(); }
};

が、それはそれとして。

class A {
public:
        void function() {}
};
class B : public A {
enum E { function };
        void g() { function(); } //Error: ')' - expression expected
};

根本的な違いは何でしょうか?

 
三項演算子でコンパイルに失敗する
三項演算子でコンパイル失敗

interface A{};
class B:public A{};
class C:public A{};
void OnStart(void)
  {
   A* x=(true)? new B : new C; //invalid cast operation
  }


何かご提案ありますか?
なんで