取引関数のOrderSelect()、PositionSelect()について、MQL4とMQL5のソースコード共通化する方法を説明しています。
関数定義
MQL4の定義
定義なし
MQL4では、オーダーとポジションの区別がないためPositionSelect()はありません。
MQL5の定義
bool PositionSelect(
string symbol // 商品名
);
MQL5にPositionSelect()の定義はありますが、引数に「商品名」しかありません。
これは、ネッティング口座(=両建てはできず、商品毎に1ポジションにマージされる)用のためで、オーダー、ポジションを個別で選択するMQL4のOrderSelect()とは使い方が全く違うため区別してください。
ここでは、MQL4のOrderSelect()に相当するMQL5のポジション選択関数について記載しています。
MQL4のOrderSelect()の定義
bool OrderSelect(
int index, // index or order ticket
int select, // flag
int pool=MODE_TRADES // mode
);
MQL4のOrderSelect()上記の定義となっています。
この関数に相当するPositionSelect()についての詳細は、OrderSelect()を参照してください。
コメント