ブロックチェーン資産の定量取引の発展とともに,ますます多くのブロックチェーン資産トレーダーは定量取引のツールを認識しています. しかし,このサークルの新しいメンバーとして,あなたは多くの概念について非常に混乱しています. 様々な用語,ソフトウェア,情報などによって混乱しています. この記事では,一般的な概念を理解し,身近に身近に,さまざまな側面からブロックチェーン資産の定量取引におけるさまざまな有用な情報を理解します. この記事では,まず基本的な概念を要約し,次にこれらの基本的な概念に対応するFMZ量子取引プラットフォームの例を示します.
まず,プラットフォームの概念を理解する必要があります. プラットフォームの上で私たちの手にあるブロックチェーン資産に投機し投資する必要があります. 現在,先輩,新興,大規模および小規模な多くのプラットフォームがあります. プログラムおよび定量的な取引を行うプラットフォームについては,さまざまな情報に基づいて自分で選択する必要があります.
プラットフォームアカウント プラットフォームアカウントは,プラットフォームで登録され開設されたアカウントです.ブロックチェーン資産は,取引のためにこのアカウントに格納することができます.一部のプラットフォームアカウントは,作成および設定することができます.副口座主なアカウントの下では,資産の分離取引と投機を容易にする.各プラットフォームのサブアカウントのアプリケーション,メカニズム,および使用は異なります.特定のプラットフォームのウェブサイトの情報を確認する必要があります.またはプラットフォームの顧客サービスに相談してください.
プラットフォームのウェブサイトでアカウントでログインした後,通常,ブロックチェーン資産が格納できる場所は複数の
プラットフォームシステム API
プラットフォームの機能を使用していない多くの学生は,
プラットフォーム API は,様々なタイプのインターフェースに分かれています.通常,REST
プロトコル インターフェイスWebSocket
プロトコルインターフェイスも提供していますFIX
インターフェースは,REST プロトコルで,REST インターフェースは,REST インターフェースのコードで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースで,REST インターフェースは,REST インターフェースです.APIこれらのプラットフォームの公式ウェブサイトの底部にある.時には,いくつかのインターフェースエラー情報をクエリするには,インターフェースのドキュメントを確認する必要があります.各プラットフォームのAPIシステムは異なりますし,違いは比較的大きいです.特定の問題については,ドキュメントを確認する必要があります.もしあなたが戦略開発者でない場合は,これらは理解のためにのみです.
アカウントの API キー 口座 API KEY は,あなたが使用するプラットフォームに格納されているブロックチェーン資産のセキュリティに関連しているので,注意深く理解する必要があります. API インターフェースはチャネルであると言われます.合格アクセスチャネルがある場合,すべてのプログラムがアクセスすることができません.それは危険です. したがって,検証が必要です. API KEY はアイデンティティを検証するために使用されます. したがって, API KEY は資産のセキュリティに関連しており,適切に保管する必要があります.
通常,プラットフォームのAPIKEYは,プラットフォームページの右上隅,アカウント管理ページに作成されます (また,プラットフォームがウェブページの他の場所にそれを置くこともあります. キーワードでリンクを見つけ,それを検索するためにクリックしてください). API KEYは2つの文字列で構成されています.最初の文字列は通常,access key
2番目の文字列は通常secret key
. API KEY に他の情報も含まれているプラットフォームもあります.例えば,OKEX V5とV3インターフェースにはPassPhrase
セキュリティ検証を強化するために自分で設定する必要がある文字列です.
API KEY を設定する際には,通常,この API KEY の権限を設定することが必要です.一般的に,
交換オブジェクト 交換対象の概念は,FMZ量子取引プラットフォームの概念 (FMZ.COM) 簡単に言うと,プラットフォームインターフェースの封筒化によって生成されるオブジェクトを指します. このオブジェクトは,FMZ戦略コードでは"exchange"です.この"exchange.GetTicker"関数を呼び出すと,実際にはプラットフォーム市場データにアクセスするためのインターフェースを呼び出す. 詳細については FMZ API 文書を参照してください.https://www.fmz.com/api#exchangeプラットフォームにはフューチャーズモジュールとスポットモジュールがある.フューチャーズ交換オブジェクトとFMZで定義されたスポット交換オブジェクトは異なるタイプの交換オブジェクトであるため,モジュールは区別されます (フューチャーズ交換オブジェクトはスポット交換オブジェクトよりもいくつかの機能を持っています.例えばレバレッジを設定する機能,ポジションのクエリの機能など,詳細についてはAPIドキュメントを参照してください).
フューチャー交換オブジェクトを操作する戦略であれば,フューチャーを追加し,スポット交換オブジェクトを操作したい場合,スポットを追加します.このデザインの理由は,プラットフォームには完全に異なるフューチャーとスポットインターフェース,そして異なるインターフェースベースアドレスさえある可能性があるため,それらは別々にカプセル化されています.
FMZプラットフォームでは,
ここで言及されている取引市場は,通常複数のモジュールで取引される特定の取引市場の状況 (取引ページを想像してください) を指します.例えば:通貨取引, スポット・マーージン取引, 契約取引など
トレーディングペア
市場に行ってキャベツを買うときのことです. そして,
スポット通貨取引そしてスポット・マーージン取引スポット取引は,ただ,取引先の取引額を指定するだけです.トレーディングペア取引されている市場を記述する.
取引通貨はBTCで,配当通貨はUSDTです. 取引通貨はBTCで,配当通貨はUSDTです.
この関数を使ってexchange.SetCurrency("BTC_USDT")
FMZのプラットフォームでexchange.SetCurrency("BTC_USDT")
現在の取引ペアを以下に切り替える:BTC_USDT
.
理解できない学生のためにSetCurrency
,あなたは参照することができます:https://www.fmz.com/api#exchange.setcurrencyわかった
理解できない学生のためにexchange
,あなたは参照することができます:https://www.fmz.com/api#exchange.
契約 (先物・オプション)
契約取引はスポット取引とは大きく異なります.現在,プラットフォーム契約はcrypto-margined contracts
そしてUSDT-margined contracts
. プログラム式取引および定量取引では,取引ペアだけでなく,契約タイプも決定する必要があります. 例えば,BTCで取引したい場合,毎季度契約 (毎季度終了時に配達),毎週契約 (毎週金曜日に終了時に配達),永久契約 (配達しない) などを含む多くのBTC契約があります. その後,識別のために1つの取引ペアのみを使用した場合,どのような契約が使用されますか? したがって,それを記述し決定するために特定の契約コードが必要です.
この方法で,どの契約市場で取引をするかを説明するときに,どの通貨シンボル (取引ペア) とどの契約タイプ (契約コード) を記述する必要があります.
クリプト・マージング・コントラクト
暗号通貨をマージンとして使用するコントラクト (BTCの仮想通貨マージンコントラクトなど,BTCをマージンとして使用し,リターンはBTCでもある) のリターンも暗号通貨である.通常,暗号通貨マージンコントラクトの取引ペアのコート通貨はUSDで表現される (そのことに深く入る必要はない,ほとんどのプラットフォームはそれを表現するために使用する).したがって取引ペアはBTC_USDであり,コントラクトは四半期契約である.BTC crypto-margined quarterly contract
市場です
FMZ量子取引プラットフォームでexchange.SetCurrency("BTC_USD")
取引ペアを設定し,exchange.SetContractType("quarter")
この方法で,現在の取引シンボルは,BTC crypto-margined quarterly contract
.
USDTで担保契約
USDTをマージンとして使用するコントラクト (例えば,BTC USDT-margined perpetual contractは,USDTをマージンとして使用し,リターンもUSDTである) のリターンもUSDTである.通常,USDT-marginedコントラクトの取引ペアのコート通貨はUSDTで表現される.したがって,取引ペアはBTC_USDTであり,コントラクトは永久契約である.BTC USDT-margined perpetual contract
市場です
FMZ量子取引プラットフォームでexchange.SetCurrency("BTC_USDT")
取引ペアを設定し,exchange.SetContractType("swap")
この方法で,現在の取引シンボルはBTC USDT-margined perpetual contract
.
順序 正確に命令とは? 注文とは,プラットフォームで購入または販売するときにプラットフォームに提出する注文チケットです.注文は,マーケットオーダー,リーミットオーダー,条件オーダーなどに分かれています.注文の最も基本的な属性は,注文の対象 (簡単に言えば,何を買うか,何を売るか),注文金額 (どれだけの金額で買うか,売るか),注文価格 (どの価格で買うか,売るか) です.次の注文がどれだけの金額であるかは重要ではなく,購入または販売する金額と何を買うか,何を売るかだけを決定する場合は,そのような注文はマーケットオーダーと呼ばれます.もちろん,プラットフォームに関連した条件オーダー (ストップ損失,アイスバーグオーダー,など) もあります.一部のプラットフォームは条件オーダーを提供し,一部は提供しません.詳細については,FMZ APIのドキュメントを確認することができます.
スポット スポットオーダーとマーケットオーダーは,通常,購入オーダーに注意を払う必要があります. 購入スポットマーケットオーダーの注文金額は通貨シンボルの金額ではなく,金銭の金額です. 市場オーダーは価格を決定しないため,どれだけの購入を決定するために金銭の金額のみを使用できます. 販売市場オーダーの金額は通貨シンボルの金額です. 価格が不確実であっても,販売された通貨シンボルの金額が決定できるからです.
契約 契約の注文金額は特別で,通常は契約金額である.プラットフォームの契約注文インターフェースは基本的に契約金額であり,通貨シンボルの金額を注文金額として取るインターフェースはありません.Binance USDTマージングのBTC永続契約は,BTC永続契約を0.01の金額で注文できますが,通貨シンボルの金額ではなく,契約金額です.ただし,1つの契約が1つのBTCであることが偶然になります. 一般的には,市場オーダーか制限オーダーかに関わらず,オーダーの金額は契約金額の番号です.
オーダーとオーダー テイカーオーダーは流動性を提供するオーダーです. 簡単に言えば,現在の市場価格が1つを買うために10で,1つ売るために11であるということです. この時点で,私は9の購入価格で購入オーダーまたは12の販売価格で販売オーダーを待っています. その後,私は市場の深さのオーダーを提供します. この私のオーダーはメーカーです. またこの例では,私が11の価格で購入オーダーを置く場合. この時点で,私のオーダーは市場で11の価格で販売オーダーで取引されます. この時点で,私は市場から注文を取ります. その時点で私が置いた購入オーダーはテイカーオーダーでした.
例えば,注文の配置機能exchange.Sell
そしてexchange.Buy
FMZ Quant に封筒化されている場合,共通のリミットオーダーとマーケットオーダーのインターフェースが封筒化されています.オーダーを出すとき,オーダーがテイカーまたはメーカーのカテゴリーに分類されるかは,オーダー価格と現在の市場,そしてオーダーが流動性を供給するか,または流動性を減少させるかどうかに依存します.
FMZ Quant に -1 の価格を輸入するときは,市場オーダーを入れます. 現場市場購入オーダーのオーダー金額が金額であることに注意してください. 市場オーダーは確実に流動性を減少させ,テイカーオーダーでなければなりません.
プラットフォーム条件順序
条件付きの注文もサポートしています.iceberg order
, stop loss order
, stop profit order
, post_only: only place maker order
, fok: all executed or canceled immediately
, ioc: executed immediately or cancel the rest
など
この命令はexchange.IO
FMZ Quant の機能は,直接プラットフォームの注文インターフェイスにアクセスし,設定されるパラメータを指定します (どの条件の注文を指定します).exchange.IO
FMZ APIのドキュメントを参照してください.https://www.fmz.com/api#exchange.io...
定量取引プラットフォームは,定量取引ツールとして見なされ,オンラインソフトウェアシステム,ウェブサイト,ローカル実行プログラム,またはGITHUBのオープンソースプロジェクトであってもよい.単純に言えば,定量取引のためのツールとして考えることができます.
FMZ量子取引プラットフォーム FMZ Quant Tradingプラットフォームはオンライン分散システムで,プラットフォームとチュートリアルについて詳しくは以下を参照してください.https://www.fmz.com/bbs-topic/4145
FMZ量子取引プラットフォームのバックテストシステム バックテストシステムとは? 簡単に言えば,バックテストシステムは,特定の取引シンボルの履歴データを再プレイし,特定の戦略を再プレイに含めて,履歴データの再プレイをシミュレートする際に戦略の取引パフォーマンスを取得することです. したがって,バックテストシステムはただのサンドボックス環境です (子供たちがプレイする砂の山を想像してください.砂の山は様々なものに作成できます.それは単なるモデルで,実際のオブジェクトとは関係ありません).
FMZ量子取引バックテストシステム
名前 | タイプ | 指示 |
---|---|---|
ビットフィネックス | スポット交換対象 | 限定取引ペア,例えば:BTC_USD,ETH_USD,LTC_USDなどをサポートする (取引ペアのコート通貨はUSDドルであることに注意してください) |
バイナンス | スポット交換対象 | 制限された取引ペアをサポートする,例えば: BTC_USDT, ETH_USDT, ETH_BTC,LTC_BTCなど. |
オーケイ | スポット交換対象 | 制限された取引ペアをサポートする,例えば: BTC_USDT, ETH_USDT, ETH_BTC,LTC_BTCなど. |
ハウビー | スポット交換対象 | 制限された取引ペアをサポートする,例えば: BTC_USDT, ETH_USDT, ETH_BTC,LTC_BTCなど. |
OKEX フューチャー | フューチャー取引対象 | 限定取引ペア,例えば: BTC_USD と ETH_USD などをサポートする.取引ペアのコート通貨はUSDです.特定の契約コードを設定した後 (関数 exchange.SetContractTypeを参照してください),契約は暗号保証契約です.サポートされている契約コードには: this_week, next_week, quarter と swap が含まれます. |
HuobiDMについて | フューチャー取引対象 | HuobiDMはHuobiフューチャーズ (Huobi Contract) で,BTC_USDとETH_USDなどの限定取引ペアをサポートします.取引ペアのコート通貨はUSDです.特定の契約コードを設定した後 (機能の交換を参照してください.SetContractType),契約は暗号保証契約です.サポートされている契約コードには: this_week, next_week, quarter,swapが含まれます. |
ビットメックス | フューチャー取引対象 | 取引対はXBT_USD. 特定の契約コードを設定した後 (関数 exchange.SetContractTypeを参照してください),契約は暗号保証契約です. サポートされている契約コードは: XBTUSD |
ビナンス・フューチャーズ | フューチャー取引対象 | 限定取引ペア,例えば: BTC_USDT と ETH_USDT などをサポートする.取引ペアのコート通貨はUSDです.特定の契約コードを設定した後 (関数 exchange.SetContractTypeを参照してください),契約はUSDTの保証契約です.サポートされている契約コードはスワップです. |
デリビットオプション | フューチャー取引対象 | 取引ペアは: BTC_USD と ETH_USD; 特定の契約コードを設定した後 (関数 exchange.SetContractTypeを参照してください), 契約は暗号保証契約です. 特定のオプション契約コードを設定する必要があります. |
量的な取引のAPIKEY
すべてのプラットフォームには API インターフェースがあり,定量取引プラットフォームにも API インターフェースがあります.例として FMZ Quant 取引プラットフォームを挙げると,FMZ の API インターフェースはextended API
. FMZプラットフォームのいくつかの機能は,プログラミングで操作できます.例えば,ボットをバッチで追加,バッチでボットを起動,バッチでボットの構成を変更など.詳細については,以下を参照してください:https://www.fmz.com/api#fmz平台扩展apiわかった
面白いことをするために使用できます.FMZ Quant の拡張 API を使って
取引のプラットフォームアカウントを自動的に制御するのは 何ですか? プログラム取引と定量取引の具体的実施形態 - プログラムされた取引スクリプトです. これらのリアルタイムプログラムは様々な言語で記述することができます. 例えば,FMZ Quant Trading PlatformはJavaScript,Python,C++言語でリアルタイム取引戦略を書くのをサポートします. これらのスクリプトプログラムは,プラットフォーム API インターフェースを通じてアカウントの購入および販売などのさまざまな操作を実行します.
プログラムされた取引スクリプトが実行されるデバイス
ボットのスクリプトプログラムにはデバイスキャリア (要するに,ボットが実行するための場所が必要です) が必要です.仮想通貨サークルの定量取引は,通常,ボットプログラムを香港のアリババクラウドサーバーに展開します (もちろん,他の場所,他のオペレーターのサーバーも使用できます).多くのプラットフォームが現在海外ネットワークアクセスを必要とする事実を考えると,多くのプラットフォームAPIインターフェイスを実行するために国内サーバーを使用することは不可能です.一般的に言えば,インターフェースがアクセスできない場合,エラーtimeout
報告されます
FMZ Quantでは,通常,香港のAlibaba Cloudサーバーに独自のソフトウェアを展開できます (FMZ Quantのボットキャリアソフトウェアは"Docker
スクリプト言語オプション プログラミング言語はたくさんあり 基本的に全ての言語で ボットのスクリプトプログラムを作成できます ここでは,FMZ Quant Trading Platformを例として挙げて,さまざまな言語の利点を理解させて頂きます.FMZ Quantでは,以下のプログラミング言語で戦略 (ボットスクリプトプログラム) を書きることができます.
JavaScript シンプルで使いやすい,デバイス環境にほとんど依存しない,ES6標準をサポートしている.その戦略プログラムの実行速度はC++戦略のみである. (FMZ Quant取引の初心者向けに推奨される).
パイソン Pythonはデバイス環境に依存しており,さまざまなライブラリがインストールできるため,拡張性が高い. (FMZプラットフォームとPythonに精通している学生に推奨).
C++
C++の戦略は最も速い実行速度,最も高い効率性を持ち,さらに使いやすくなっています
言語を習った後,他の言語を学ぶ.so easy!
マイランゲージ FMZがサポートするMylanguageは,最も基本的なコマンドのみです.
ビジュアライゼーション モジュール 統合戦略 視覚的な方法で戦略を作成することは,プログラム論理の興味,改善,理解のためのみである.いくつかの単純な論理を作成するために使用できるが,少し複雑な戦略を設計するには適していない.それは維持し拡張するのが困難で,複雑な論理を設計することはより困難である.