'MACD_MA model.mq5' MACD_MA model.mq5 11'Trade.mqh' Trade.mqh 11'Object.mqh' Object.mqh 11'StdLibErr.mqh' StdLibErr.mqh 11'SymbolInfo.mqh' SymbolInfo.mqh 11'OrderInfo.mqh' OrderInfo.mqh 11'HistoryOrderInfo.mqh' HistoryOrderInfo.mqh 11'PositionInfo.mqh' PositionInfo.mqh 11'DealInfo.mqh' DealInfo.mqh 11'AccountInfo.mqh' AccountInfo.mqh 11'model_macd.mqh' model_macd.mqh 11'Model.mqh' Model.mqh 11'List.mqh' List.mqh 11'TableOrders.mqh' TableOrders.mqh 11'Time.mqh' Time.mqh 11'mm.mqh' mm.mqh 11'stdlib.mqh' stdlib.mqh 11'model_ma.mqh' model_ma.mqh 11'model_bollinger.mqh' model_bollinger.mqh 11returnvalue of 'OrderSelect' should be checked TableOrders.mqh 1204implicitenum conversion TableOrders.mqh 5044'new_message' - conversion is not accessible because of inheritance access Time.mqh 18521
possible use of uninitialized variable 'lot_limit' mm.mqh 12910't' - conversion is not accessible because of inheritance access Model.mqh 25227
declaration of 'trade' hides global variable Model.mqh 28216
see previous declaration of 'trade' MACD_MA model.mq5 188
declaration of 'i' hides local variable Model.mqh 31015
see previous declaration of 'i' Model.mqh 30712
possible loss of data due to type conversion Model.mqh 42847
possible loss of data due to type conversion model_macd.mqh 8611
possible loss of data due to type conversion model_macd.mqh 9014
possible loss of data due to type conversion model_macd.mqh 9114
possible loss of data due to type conversion model_macd.mqh 9216
expression not boolean model_macd.mqh 22811
expression not boolean model_macd.mqh 25411
possible loss of data due to type conversion model_ma.mqh 8511
possible loss of data due to type conversion model_ma.mqh 898
possible loss of data due to type conversion model_ma.mqh 9019
expression not boolean model_ma.mqh 21911
expression not boolean model_ma.mqh 24211
declaration of 'k_ATR' hides global variable model_bollinger.mqh 97110
see previous declaration of 'k_ATR' MACD_MA model.mq5 2516
possible loss of data due to type conversion model_bollinger.mqh 9922
possible loss of data due to type conversion model_bollinger.mqh 10422
possible loss of data due to type conversion model_bollinger.mqh 10722
variable 'rezult' not used model_bollinger.mqh 1709
variable 'rezult' not used model_bollinger.mqh 1959
expression not boolean model_bollinger.mqh 23811
expression not boolean model_bollinger.mqh 263112 errors, 25 warnings 326
class Test : public CObject {
public:
int i_;
Test(int i) {
i_ = i;
};
int get_i() {
return i_;
};
};
CList *list = new CList();
for (int i = 0; i < 10; i++) {
Test *t = new Test(i);
list.Add(t);
}
for (int i = 0; i < list.Total(); i++) {
Test *t = list.GetNodeAtIndex(i);
if (i == 5) {
list.DeleteCurrent();
}
if (CheckPointer(t) == POINTER_INVALID) {
continue;
}
Print(t.get_i());
}
これは素晴らしい記事であり、良いフレームワークだ。まさに私が探していたものだ。
最新のバージョンですか?
ありがとうございます。
こんにちは!
いくつかのエラーを修正しようとしたのですが、もう1つ出てきてしまいました...。もし初心者が簡単に生活できるようにするのが目的なら、こんな風に難しくなってきて、私はここで気が狂いそうです...。
助けてください!
動作させるために、2つの点を変更する必要がありました。
ファイル "TableOrders.mqh "のこの関数 bool CTableOrders::Add(ulong Ticket,double stop_loss,double take_profit)89行目で、変数m_typeを次のように置き換える必要があります:
From:
m_type=order_info.Type();
から
m_type=order_info.OrderType();
2つ目は、"TableOrders.mqh "にもある:
から:
クラス CTableOrders : CObject
から
class CTableOrders : public CObject
Regards,
A.ハップ
こんにちは!
いくつかのエラーを修正しようとしたのですが、もう1つ出てきてしまいました...。もし初心者が簡単に生活できるようにするのが目的なら、こんな風に難しくなってきて、私はここで気が狂いそうです...。
助けてください!
オブジェクト指向アプリケーション開発の概念、階層、ポリモーフィズム、継承、仮想メソッドなどを理解する必要があります。
simple_model.mq5をコンパイルするには、"public "を追加する必要があった:
class CModel: publicCObject を追加しなければならなかった。
MACD_MA_model.mq5をコンパイルしている間、次のエラーが出続けます:
MODE_OPEN' - 列挙子識別子はすでに定義されています stdlib.mqh 13 4
基礎となるライブラリを参照するこのエラーを回避することができません。
あなたの記事と、テストのための一般的なフレームワークを構築する努力に感謝します。
simple_model.mq5をコンパイルするには、"public "を追加する必要があった:
class CModel: public CObject @12行目
MACD_MA_model.mq5をコンパイルしている間、このエラーが出続けます:
MODE_OPEN' - 列挙体識別子はすでに定義されています stdlib.mqh 13 4
基礎となるライブラリを参照するこのエラーを回避することができません。
あなたの記事と、テストのための一般的なフレームワークを構築する努力に感謝します。
https://www.mql5.com/en/forum/244512
アンコンパイルしようとしたらエラーが出た
コードを修正する予定はありますか?
min_risk = point * tick_value *symbol_info_.LotsStep();
ポイントカウントの代わりにティックカウントを使用する必要があります。
tick_count = MathAbs(open_price - stop_loss) / symbol_info_.TickSize();
なぜなら、いくつかのシンボルでは、ティックサイズ != ポイントだからです。
例えば
例えば、FuturesAgricultural Commoditiesの場合、以下のようになる:
リストを反復するときにノードを削除してはいけない。
例えば
インデックス5のノードを削除した後、インデックス6を反復しても、次の要素はインデックス5のままです。
GetFirstNode / GetNextNodeを使用する方がよいでしょう。
ご投稿ありがとうございました!