誰でも発明者の量化拡張APIを使用して量化取引プラットフォームを構築することができます.この例プロジェクトでは,Pythonと発明者の量化拡張APIを構築して強力な量化取引プラットフォームを構築することを示しています.
このDEMOプロジェクトでは,サーバー端コードを書き,既存のフォーラム,ブログ,コミュニティなどのシステムに埋め込むためにフロントエンドページを追加することができます. 既存のユーザー群への柔軟なアクセスを実現し,既存のユーザー群が発明者の量化された底層技術サポートを完全に経験していないため,ユーザーはより簡潔で操作が容易である.
高自由の戦略設計
Python,JavaScript,C++を使って,量化取引戦略を書き,自由にカスタマイズし,量化取引の世界で自分の取引アイデアを空気に実現することができます.
強力な高効率の回検システム
この時点で,データ収集は難しくなく,ローカル・リサーチ・システム・エンジンは1つのコマンドで簡単に設定できます.https://github.com/fmzquant/backtest_python
シンプルな構造
HTTP サーバ端末は,いくつかの前端ページを書き込むだけで簡単に構築できます.
名称:発明者定量化 デモンストレーション 発明者定量化拡張APIを使用して自己の資産管理定量化プラットフォームを構築する方法
このDEMOプロジェクトをインストール
このプロジェクトをクローンします
git clone https://github.com/fmzquant/fmz_extend_api_demo.git
このディレクトリに切り替えて, pip を実行します.
pip install -r requirements.txt
注意: Permission deniedが提示された場合, sudo pip install -r requirements.txt のように pip を実行し,要求に応じてOS パスワードを入力します.
インストールが完了すると,使用するサーバー端末のプログラムを設定します. 発明者の数値化. アカウントのAPI KEY
発明者定量化 API KEY を拡張する 詳細については,発明者定量化 API のドキュメントを参照してください:https://www.fmz.com/api
作成 発明者 定量化 API KEY
このデモでは,すべてのプログラムが,app.pyサーバー端プログラム.
このDEMOプロジェクトでサーバー端で実行するコマンド
python app.py
ランニングは表示:
サーバー端プログラムを実行した後,ブラウザでローカルページを開きます.http://127.0.0.1:5000
テスト登録ページ
このプロジェクトDEMO量化プラットフォームは既に実行中です. このテストプラットフォームのアカウント (現地データ保存) を登録し,ログインして,このプラットフォームのユーザーとして取引所のAPI KEYを設定します.
フォローしているサイトは,
ページに表示される3つの戦略は,UIのみが表示されるため,これらの戦略は,資産管理量化プラットフォームの管理者にも必要である.
テスト戦略を設定する このDEMOプロジェクトでは,サーバ端末は,起動ボタンを押すボタンを押すことで,発明者の定量化アカウントに"main"キーワードを含む検索を誘発するポリシーを検知し,そのポリシーを使用してロボットを実行します. テストの利得を測るための戦略です.
main Test profit 戦略コードは以下のとおりです.
function main() {
while(true) {
LogProfit(Math.random()*100);
Sleep(1000);
}
}
コードを編集した後,保存をクリックします.
管理者: 管理者: 管理者: 管理者https://www.fmz.com/bbs-topic/463 )
起動ボタンをクリックすると,自動でロボットが作成され,ロボットがデモンストレーションポリシーに縛られ,ランダムに値を出力して収益値として表示される.
発明者の定量化制御センターに新作ロボットが表示されているのが見えます.
DEMOのWebページにも対応するランダム値が表示されます.
発明者の定量化で動作するロボットは,現在のDEMOプラットフォームにログインしたユーザをappIdで識別する.
def robot_run(robotId, appId, exchanges):
strategyId = -1
# 从策略库里选出一个包含main字符串的策略运行, 也可以预定义
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, # 为该机器人设置标签,关联到本用户
"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 地址更新: https://github.com/fmzquant/fmz_extend_api_demo
投資を量化する自然設定環境が正しくない.そのバージョンのpythonが必要ですか?
チャーチルキシーこの方法で構築された量化プラットフォームでは,1人の他のユーザーが登録している場合,管理者が作成したポリシーのみが表示されるのか?ソースコードが表示されるのか? 2人のユーザーが管理者のポリシーに基づいて,ユーザーの取引所のAPIを構成し,ユーザーの自身の実態ディスクを実行できるのか?
リザ野望は大きい. 野望にふさわしい能力が重要だ.
Jこのプラットフォームは,ロボットが動いていることを確認し,制御するだけで,戦略を書き,ロボットを追加することはできません.
小さな夢これはDEMOであり,オープンソースで,ソースコードを直接参照できます.https://github.com/fmzquant/fmz_extend_api_demo.git
チャーチルキシーありがとうございました
小さな夢` ` フォーラムの機能の追加には, ` ` このDEMOは,簡単に言えば,あなたが自分でウェブサイトを構築し,FMZの拡張APIを使用してFMZのリアルディスクサービスを利用することができます.
チャーチルキシーまた,これらの機能をフォーラムに追加するにはどうすればよいですか?
小さな夢ユーザが見るように策略を設計し,ユーザが自分のパラメータを設定できるようにします. これらはすべてあなたの製品デザインに基づいています (底辺のサービスはFMZです).
小さな夢暫定的に開いていない 策略作成インターフェース (後日開かれる可能性もある),他の機能も (ロボット作成などなど) サポートされている.