8. プラグイン仕様
8.1 プラグイン概要
FXDaemonはlibPluginProxy経由でプラグインをロードして、以下の構成でブローカーサーバーとつながります。
FXDaemon ⇔ libPluginProxy ⇔ Plugin ⇔ Broker
プラグインがIBaseOrderインターフェースをインプリメントしてFXDaemonに呼び出されます。
特定のイベントが発生した場合はIPluginProxyインターフェース経由でプラグインからFXDaemonに通知します。
8.2 プラグインが実装するインターフェース - IBaseOrder -
INIファイルを読み取ってプラグインを初期化します。
[戻り値]
[引数]
ブローカーサーバーにログインします。
[戻り値]
ブローカーサーバーをログアウトしてプラグインをクローズします。
[戻り値]
ブローカーサーバーの時間を取得します。
[戻り値]
口座情報を取得します。
[戻り値]
[引数]
| accountID | :口座番号 |
| tblAccount | :取得した口座情報 |
現在のレートを取得します。
[戻り値]
[引数]
| symbols | :銘柄リスト |
| pTblPrice | :取得したレート |
保有ポジションを取得します。
[戻り値]
[引数]
今週中に既決済ポジションを取得します。
[戻り値]
[引数]
ヒストリカルデータを取得します。
[戻り値]
[引数]
| symbol | :銘柄 |
| period | :時間足(m5, m15, m30, H1, H4, D1) |
| start | :開始時間 |
| end | :終了時間 |
| maxRange | :取得最大範囲フラグ |
| pTblCandle | :取得したヒストリカルデータ |
成行注文を作成します。
[戻り値]
[引数]
成功した場合は注文番号を注文情報構造体にセットします。
ストップロスを変更します。
[戻り値]
[引数]
成功した場合は注文番号を注文情報構造体にセットします。
テイクプロフィットを変更します。
[戻り値]
[引数]
成功した場合は注文番号を注文情報構造体にセットします。
保有ポジションを決済します。
[戻り値]
[引数]
8.3 プラグインから利用するインターフェース - IPluginProxy -
プラグインを登録します。
[戻り値]
[引数]
| name | :プラグインの名前 |
| baseOrder | :プラグインのインスタンス |
ブローカーサーバーから切断された時にイベントを送信します。
ログを出力します。
[引数]
| level | :出力レベル |
| message | :ログメッセージ |
マッケートデータが変更された時にイベントを送信します。
[引数]
| status | :ステータス |
| tblPrice | :マッケートデータ |
アカウント情報が変更された時にイベントを送信します。
[引数]
| status | :ステータス |
| tblAccount | :アカウント情報 |
オーダーイベントを送信します。
[引数]
| status | :ステータス |
| tblOrder | :オーダー情報 |
保有ポジションが変更された時にイベントを送信します。
[引数]
| status | :ステータス |
| tblTrade | :保有ポジション情報 |
既決済ポジションが変更された時にイベントを送信します。
[引数]
| status | :ステータス |
| tblTrade | :既決済ポジション情報 |