日本語
8. プラグイン仕様
8.1 プラグイン概要

FXDaemonはlibPluginProxy経由でプラグインをロードして、以下の構成でブローカーサーバーとつながります。

FXDaemon ⇔ libPluginProxy ⇔ Plugin ⇔ Broker
プラグインがIBaseOrderインターフェースをインプリメントしてFXDaemonに呼び出されます。
特定のイベントが発生した場合はIPluginProxyインターフェース経由でプラグインからFXDaemonに通知します。
8.2 プラグインが実装するインターフェース - IBaseOrder -
..initloginclosegetServerTime
getAccountgetPricegetOpenedTradesgetClosedTradesgetHistoricalData
openMarketOrderchangeStopLosschangeTakeProfitcloseTrade

INIファイルを読み取ってプラグインを初期化します。

[戻り値]

成功:0
失敗:-1

[引数]

iniFile:初期化ファイル

ブローカーサーバーにログインします。

[戻り値]

成功:0
失敗:-1

ブローカーサーバーをログアウトしてプラグインをクローズします。

[戻り値]

成功:0
失敗:-1

ブローカーサーバーの時間を取得します。

[戻り値]

サーバー時間

口座情報を取得します。

[戻り値]

成功:1
失敗:0

[引数]

accountID:口座番号
tblAccount:取得した口座情報

現在のレートを取得します。

[戻り値]

銘柄の数

[引数]

symbols:銘柄リスト
pTblPrice:取得したレート

保有ポジションを取得します。

[戻り値]

保有ポジションの数

[引数]

pTblTrade:取得した保有ポジション

今週中に既決済ポジションを取得します。

[戻り値]

既決済ポジションの数

[引数]

pTblTrade:取得した既決済ポジション

ヒストリカルデータを取得します。

[戻り値]

ヒストリカルデータの数

[引数]

symbol:銘柄
period:時間足(m5, m15, m30, H1, H4, D1)
start:開始時間
end:終了時間
maxRange:取得最大範囲フラグ
pTblCandle:取得したヒストリカルデータ

成行注文を作成します。

[戻り値]

成功:0
失敗:-1

[引数]

tblOrder:注文情報
成功した場合は注文番号を注文情報構造体にセットします。

ストップロスを変更します。

[戻り値]

成功:0
失敗:-1

[引数]

tblOrder:注文情報
成功した場合は注文番号を注文情報構造体にセットします。

テイクプロフィットを変更します。

[戻り値]

成功:0
失敗:-1

[引数]

tblOrder:注文情報
成功した場合は注文番号を注文情報構造体にセットします。

保有ポジションを決済します。

[戻り値]

成功:0
失敗:-1

[引数]

tblOrder:注文情報
8.3 プラグインから利用するインターフェース - IPluginProxy -
..registerPluginonDisconnectedonMessageonPrice
onAccountonOrderonOpenedTradeonClosedTrade

プラグインを登録します。

[戻り値]

成功:true
失敗:false

[引数]

name:プラグインの名前
baseOrder:プラグインのインスタンス

ブローカーサーバーから切断された時にイベントを送信します。

ログを出力します。

[引数]

level:出力レベル
message:ログメッセージ

マッケートデータが変更された時にイベントを送信します。

[引数]

status:ステータス
tblPrice:マッケートデータ

アカウント情報が変更された時にイベントを送信します。

[引数]

status:ステータス
tblAccount:アカウント情報

オーダーイベントを送信します。

[引数]

status:ステータス
tblOrder:オーダー情報

保有ポジションが変更された時にイベントを送信します。

[引数]

status:ステータス
tblTrade:保有ポジション情報

既決済ポジションが変更された時にイベントを送信します。

[引数]

status:ステータス
tblTrade:既決済ポジション情報