取引シグナルのプロパティ値(整数型)を設定 SignalInfoSetInteger 関数

関数

トレードシグナル関数

SignalInfoSetInteger 関数

 この関数は、取引シグナルコピートレードで設定している整数型のプロパティ値を再設定します。取引シグナルの購読方法についてはこちらをご確認ください。

データ型と構成・戻り値

bool SignalInfoSetInteger(①, ②);

 戻り値は、処理が成功した場合は true、それ以外は falseが返されます。
 発生するエラーについては、GetLastError関数で取得することができます。

引数 [2]

 SignalInfoSetInteger関数は 2個の引数で構成されます。


引数名データ型単位初期値説明
property_idenumシグナルコピー設定プロパティの識別子。
ENUM_SIGNAL_INFO_INTEGER 列挙値から読取専用以外を選択。
valuelong再設定するシグナルコピーのプロパティ値。

使用例

SignalInfoSetInteger関数による取引シグナルプロパティ値の設定

 SignalInfoSetInteger関数を使って取引シグナルの整数型のプロパティ値を設定します。

 取引シグナルを選択して購読にしておく必要があります。設定方法はこちらです。

コード

// SignalInfoSetInteger関数による取引シグナルプロパティ値の設定
#property strict
void OnInit() {

Print("①コピートレードの許可:",   (bool)SignalInfoGetInteger(SIGNAL_INFO_SUBSCRIPTION_ENABLED));   // 1
Print("②損切と利確のフラグ:",     (bool)SignalInfoGetInteger(SIGNAL_INFO_COPY_SLTP));              // 3
Print("③確認無し同期の有効:",     (bool)SignalInfoGetInteger(SIGNAL_INFO_CONFIRMATIONS_DISABLED)); // 4
Print("④取引資金の割合:",               SignalInfoGetInteger(SIGNAL_INFO_DEPOSIT_PERCENT));        // 5

Print("⑤証拠金の下限:",                 SignalInfoGetDouble(SIGNAL_INFO_EQUITY_LIMIT));            // 8
Print("⑥スリッページ:",                 SignalInfoGetDouble(SIGNAL_INFO_SLIPPAGE));                // 9

bool tf1 = SignalInfoSetInteger(SIGNAL_INFO_SUBSCRIPTION_ENABLED, false);   // 1
bool tf2 = SignalInfoSetInteger(SIGNAL_INFO_COPY_SLTP, true);               // 3
bool tf3 = SignalInfoSetInteger(SIGNAL_INFO_CONFIRMATIONS_DISABLED, false); // 4
bool tf4 = SignalInfoSetInteger(SIGNAL_INFO_SUBSCRIPTION_ENABLED, 50);      // 5

bool tf5 = SignalInfoSetDouble(SIGNAL_INFO_EQUITY_LIMIT, 1000.0);           // 8
bool tf6 = SignalInfoSetDouble(SIGNAL_INFO_EQUITY_LIMIT, 1.0);              // 9

Print("成否:", tf1, " ①コピートレードの許可:", (bool)SignalInfoGetInteger(SIGNAL_INFO_SUBSCRIPTION_ENABLED));   // 1
Print("成否:", tf2, " ②損切と利確のフラグ:",   (bool)SignalInfoGetInteger(SIGNAL_INFO_COPY_SLTP));              // 3
Print("成否:", tf3, " ③確認無し同期の有効:",   (bool)SignalInfoGetInteger(SIGNAL_INFO_CONFIRMATIONS_DISABLED)); // 4
Print("成否:", tf4, " ④取引資金の割合:",             SignalInfoGetInteger(SIGNAL_INFO_DEPOSIT_PERCENT));        // 5

Print("成否:", tf5, " ⑤証拠金の下限:",               SignalInfoGetDouble(SIGNAL_INFO_EQUITY_LIMIT));            // 8
Print("成否:", tf6, " ⑥スリッページ:",               SignalInfoGetDouble(SIGNAL_INFO_SLIPPAGE));                // 9
}

コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)

 各行の後ろにあるコメントの数値は、引数①の識別子に対応する値です。識別子の代わりにこの値を使うこともできます。

結果

 結果は、設定変更ができません。原因不明です。GetLastError関数を使ってエラーを確認したところ「関数の呼び出しは出来ません」(エラー番号:4060)となります。

タイトルとURLをコピーしました