現在の口座情報を取得する関数
現在の口座情報を取得する関数です。
①残高 ②口座通貨名 ③クレジット ④有効証拠金 ⑤必要証拠金 ⑥余剰証拠金 ⑦ロスカット証拠金維持率 ⑧損益 ⑨口座名 ⑩口座番号 ⑪レバレッジ ⑫FX会社名 ⑬接続サーバー名 などの口座情報を取得することができます。
使い方の一つとして、⑩と⑫の口座情報を取得することで、作成したEAに口座縛りを付けることができます。詳しくはこちらを参考にしてください。
データ型と構成・戻り値
double AccountBalance(); // ①残高
string AccountCurrency(); // ②口座通貨名
double AccountCredit(); // ③クレジット
double AccountEquity(); // ④有効証拠金
double AccountMargin(); // ⑤必要証拠金
double AccountFreeMargin(); // ⑥余剰証拠金
int AccountStopoutLevel(); // ⑦ロスカット証拠金維持率
double AccountProfit(); // ⑧損益
string AccountName(); // ⑨口座名
int AccountNumber(); // ⑩口座番号
int AccountLeverage(); // ⑪レバレッジ
string AccountCompany(); // ⑫FX会社名
string AccountServer(); // ⑬接続サーバー名
戻り値は、上記の各関数に対応したコメント内容が返されます。
引数 [0]
引数無し。
使用例
現在の口座情報の取得
取引画面の各口座情報を関数を使って取得します。
取得する口座情報は、
①残高 ②口座通貨名 ③クレジット ④有効証拠金 ⑤必要証拠金 ⑥余剰証拠金 ⑦ロスカット証拠金維持率 ⑧損益 ⑨口座名 ⑩口座番号 ⑪レバレッジ ⑫FX会社名 ⑬接続サーバー名 の 13個です。
コード
// 現在の口座情報の取得
#property strict
void OnInit() {
Print("①残高:", AccountBalance());
Print("②口座通貨名:", AccountCurrency());
Print("③クレジット:", AccountCredit());
Print("④有効証拠金:", AccountEquity());
Print("⑤必要証拠金:", AccountMargin());
Print("⑥余剰証拠金:", AccountFreeMargin());
Print("⑦ロスカット証拠金維持率:", AccountStopoutLevel());
Print("⑧損益:", AccountProfit());
Print("⑨口座名:", AccountName());
Print("⑩口座番号:", AccountNumber());
Print("⑪レバレッジ:", AccountLeverage());
Print("⑫FX会社名:", AccountCompany());
Print("⑬接続サーバー名:", AccountServer());
}
コードをコンパイルして実行する方法はこちらを参考にしてください。(デモ口座でお試しください)
結果
③は、クレジットが無い場合は、表示されません。
⑦のロスカット証拠金維持率は、証拠金維持率が⑦ロスカット証拠金維持率を下回ると資金不足とみなされて強制ロスカットされてしまいます。
同じ数量の両建てをした場合、⑤必要証拠金、⑦証拠金維持率が表示されなくなります。
⑩⑪は AccountInfoInteger関数、①と③~⑧は AccountInfoDouble関数、②⑨⑫⑬は AccountInfoString関数でも取得することができます。また、⑫のFX会社名については TerminalCompany関数でも取得できます。
ナビゲーターが表示されていない場合は
「メニュー」→「表示」→「ナビゲーター」から
表示させてください。