FMZ Quant拡張 API を使用して定量的なプラットフォームを作成することができます. デモ項目では,PythonとFMZ Quant拡張 API を使用して強力な定量的なプラットフォームを構築する方法を示します.
DEMO項目に示すように,サーバー側コードを書くことや,フォーラム,ブログ,コミュニティなど,既存のシステムに挿入するフロントエンドページを追加することを参照できます. 既存のユーザーグループへの柔軟なアクセスを実現するため,既存のユーザーグループは FMZ Quant の基礎的な技術サポートを完全に経験しないので,ユーザーの利用はより簡潔で操作が容易になります.
非常に柔軟な戦略設計
量的な取引戦略を書くために Python,JavaScript,C++ を使用できます. 量的な取引の世界で,制限なく,自由にカスタマイズし,独自の取引アイデアを実現できます.
強力で効果的なバックテストシステム
簡単に設定するには,ローカルバックテストエンジンは1つのコマンドのみが必要です. リンク:https://github.com/fmzquant/backtest_python
簡素化された構造
構造を簡単に構築するには,いくつかのフロントエンドページと1つの HTTP サーバープログラムを書くだけです.
名前: FMZ Quant 拡張APIを活用して 資産管理の定量化プラットフォームを構築する方法を示します
DEMO 装置
まず デモをクローンする
git clone https://github.com/fmzquant/fmz_extend_api_demo.git
辞書に切り替えてピップを設置する
pip install -r requirements.txt
注:
インストール後,サーバープログラムに必要な FMZ アカウント API KEY を設定します.
FMZ拡張 API KEY の使用詳細は,API ドキュメンテーションで確認できます.
FMZ API キーを作成します.
API キーを入力します.app.pyDEMOのサーバープログラムです
DEMOのサーバーが コマンドを実行します
python app.py
操作表示:
サーバープログラムを実行した後,ブラウザでローカルページを開きます:http://127.0.0.1:5000
登録ページをチェック
DEMO 定量プラットフォームが実行中です.テストプラットフォームアカウントを登録します (ローカルデータに保存されます).プラットフォームアカウントの API KEY を設定するためにログインします.
設定は次のとおりです.
ページに表示されている3つの戦略は,UIディスプレイのみです.これらのものは,資産管理量的なプラットフォームのマネージャーによって実装される特定のデザインも必要とします.これは,デモ目的のみです.
テスト戦略を設定する このDEMOでは,サーバが"つのキーで起動する"ボタンを押すのを検知し",メイン"キーワードを含む FMZ Quant アカウントの検索戦略を起動し,この戦略を使用してボットを実行するように拘束します.
主要利益の戦略コード:
function main() {
while(true) {
LogProfit(Math.random()*100);
Sleep(1000);
}
}
コードを編集して保存をクリックします.
操作前に1つのドーカーがオンになっていることを確認してください.
ボットが自動で作成され,デモ戦略のみがランダムに利益値として表示される値をエクスポートできます.
FMZ Quantのダッシュボードに新しく作成されたボットが表示されています
対応するランダム値も DEMO ページに表示されます.
FMZ Quantで動作するボットは,現在のDEMOプラットフォームのログインアカウントを appIDで識別します.
def robot_run(robotId, appId, exchanges):
strategyId = -1
# You can select to operate a strategy containing the string "main" from the "Strategy"library
for ele in api("GetStrategyList")['data']['result']['strategies']:
if 'main' in ele['name']:
strategyId = ele['id']
if strategyId < 0:
raise u"not found strategy"
settings = {
"name":"robot for %s" % (appId, ),
"args": [], # our custom arguments for this strategey
"appid": appId, # set a label for the bot, to relate to the user
"period": 60,
"strategy": strategyId,
"exchanges": [],
}
for e in exchanges:
settings["exchanges"].append({"eid": e.eid, "pair": get_default_stock(e.eid), "meta" :{"AccessKey": e.accessKey, "SecretKey": e.secretKey}})
if robotId > 0:
return api('RestartRobot', robotId, settings)
else:
return api('NewRobot', settings)
設定はボットを作成するための設定情報で アピドはユーザーをマークするために使用されます
# Github address update: https://github.com/fmzquant/fmz_extend_api_demo