AccountInfoString関数の働き・役割
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/6d519d5a2e7a5de1220264052efe3fc5-1024x585.webp)
AccountInfoString関数は、指定された口座プロパティの値を文字列形式で返すための関数です。AccountInfoString関数を使うことで、口座に関する様々な情報を取得できます。
具体的にはブローカーの名前、口座の通貨、クライアント名、取引サーバーの名前などが含まれます。
AccountInfoString関数の引数について
AccountInfoString関数は以下のように定義されます:
string AccountInfoString(
ENUM_ACCOUNT_INFO_STRING property_id // プロパティ識別子
);
引数である property_id
は、取得したいプロパティを指定するための識別子です。
この識別子は ENUM_ACCOUNT_INFO_STRING 列挙体のいずれかの値を取ります。
ENUM_ACCOUNT_INFO_STRINGについて
ENUM_ACCOUNT_INFO_STRINGは、AccountInfoString関数で使用されるプロパティ識別子を定義するenum列挙型です。以下に、各識別子とその説明を示します。
※enum列挙型についての詳細は↓の記事をご参照ください。
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/a2020c36e1972af042a0d630d3f4c62c-1024x585.webp)
ACCOUNT_COMPANY
ACCOUNT_COMPANYはブローカーの名前を示します。この識別子を使用することで、口座を管理するブローカーの名前を取得できます。
ACCOUNT_CURRENCY
ACCOUNT_CURRENCYは口座の通貨を示します。この識別子を使用することで、取引に使用される通貨を取得できます。
ACCOUNT_NAME
ACCOUNT_NAMEはクライアントの名前を示します。この識別子を使用することで、口座の所有者の名前を取得できます。
ACCOUNT_SERVER
ACCOUNT_SERVERは取引サーバーの名前を示します。この識別子を使用することで、取引が行われているサーバーの名前を取得できます。
AccountInfoString関数の戻り値について
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/283df54d046cfd4465af34be2492bd81-1024x585.webp)
AccountInfoString関数の戻り値は、指定したプロパティの値を示す文字列です。例えば、ACCOUNT_COMPANYを指定すると、ブローカーの名前が文字列で返されます。同様に、ACCOUNT_CURRENCYを指定すると、口座の通貨が返されます。
AccountInfoString関数を使ったサンプルコード
以下は、AccountInfoString関数を使用して口座情報を取得し、エキスパートログに出力するサンプルコードです。
// OnStart関数はスクリプトの実行が開始されたときに自動的に呼び出されます
void OnStart()
{
// ブローカーの名前を取得して出力します
Print("ブローカーの名前: ", AccountInfoString(ACCOUNT_COMPANY));
// 口座の通貨を取得して出力します
Print("口座の通貨: ", AccountInfoString(ACCOUNT_CURRENCY));
// クライアントの名前を取得して出力します
Print("クライアントの名前: ", AccountInfoString(ACCOUNT_NAME));
// 取引サーバーの名前を取得して出力します
Print("取引サーバーの名前: ", AccountInfoString(ACCOUNT_SERVER));
}
サンプルコードに使われた関数や文法要素の簡単な解説
- Print関数:文字列や変数の値をエキスパートログに出力するための関数です。
- AccountInfoString関数:指定したプロパティの値を文字列形式で返します。
- ACCOUNT_COMPANY, ACCOUNT_CURRENCY, ACCOUNT_NAME, ACCOUNT_SERVER:ENUM_ACCOUNT_INFO_STRING列挙体のメンバーで、それぞれブローカーの名前、口座の通貨、クライアントの名前、取引サーバーの名前を示します
<参照>
AccountInfoInteger関数/AccountInfoDouble関数
![](https://mqlinvestmentlab.com/wp-content/uploads/2024/06/b12c36f35b9d380e45f3dc1a9045f60a-1024x585.webp)