口座残高の取得(AccountsProvider使用)

Pocket

今回は口座の残高を取得して表示してみます。自動で株取引をする場合は、取引前の口座の状態の把握が必要になります。


どのようにすれば残高を取れるのかまったくわからないため、とりあえずヘルプを参照します。EasyLanguageプログラム開発を起動してください。画面左側のツールボックスに出ているオブジェクトがいろいろな情報や操作の基本となるオブジェクトが入っているのでその名前から検索します。口座関連だとAccountsProviderというのがあるみたいです。ヘルプにその名前を入力して検索してください。検索の一番上にヒットしているAccountsProviderクラスを表示してみます。下側に例をインポートするリンクがあるので、下側までスクロールします。

AccountsProviderの ヘルプ

例をインポートをクリックしてローカルディスクにファイルを保存して、TradeStation側で以下の操作をして実行してみてください。

ファイル(F) → EasyLanguageをインポート/エクスポート(M)… → 進む>(N)(EasyLanguageファイル(ELD、ELSまたはELA)をインポート) → 参照(R)…からファイルを選択して進む>(N) → インジケーターが選択されている状態で進む>(N) → ダウンロードしたファイル名が選択されている状態で終了クリック → チャート分析を表示 → チャート上で右クリックして分析テクニックを挿入(Q) …を選択 → インポートしてインジケーターを選択してOKクリック

チャートの下側に口座情報が表示されましたでしょうか?

口座残高の表示

私の口座残高が出てしまっていますが。。青い線で残高、赤い線で口座数が表示されています。以下の操作でソースを見てみましょう。

チャートを右クリックして分析テクニックの設定(N)…を選択 → インポートしたインジケーターが選択されている状態でEasyLanguageを編集(E)をクリック

AccountsProvider1_Updatedという関数が定義されていると思います。これはAccountsProviderに対するイベントハンドラというものになります。イベントハンドラはそのオブジェクトの状態が変わったり、外から命令(操作)が入ったりした場合に発生します。ここでは新しい株を購入したりした後の口座情報の変化によって発生するイベントであるUpdatedというイベント発生時にコードを実行しています。残高はRTAccountNetWorthというプロパティで取得できるようです。ヘルプでこの文字列を検索してみましょう。5番目にヒットしているAccountクラスをクリックしてください。

Accountクラスのヘルプ

リアルタイム純資産額の値が取得できるようです。ヘルプの上の方にGetRTAccountNewWorthという関数もあります。AccountProviderを使わなくても直接関数を使って口座残高を取得できるようです。次回はこの関数を使って残高の取得を自作してみましょう。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です