はじめに
VeighNaは、もともと国内の個人トレーダーによって開発され、2015年に正式にローンチされたPythonベースのオープンソース定量取引プラットフォームです。シンプルなトレーディング・インターフェース・パッケージから、フル機能を備えたトレーディング開発フレームワークへと進化を遂げ、プライベート・エクイティ・ファンド、証券会社、先物会社、大学研究機関、個人投資家などが利用している。ユーザーはプライベート・エクイティ・ファンド、証券会社、先物会社、大学研究機関、個人投資家など。VeighNaは株式、先物、オプション、外国為替など様々な金融商品をサポートし、豊富な取引インターフェースとデータAPIを提供しています。イベント駆動型エンジンを採用し、操作がシンプルで、コミュニティが活発で、コードはMITオープンソースプロトコルに則り、GitHubでホストされており、誰でも無料で利用・改変が可能です。修正も自由です。
機能一覧
- 国内CTP、Pegasus、Jinshida、海外OANDA、Interactive Brokersなど様々な取引インターフェースをサポート。
- 自動売買プログラムの開発を容易にするイベント駆動型エンジンを提供。
- 内蔵のCTAストラテジー・モジュールは、ストラテジー開発とバックテスト分析をサポート。
- TWAP、Sniperなどのスマートな取引アルゴリズムを提供するアルゴリズム取引モジュールを搭載。
- 市場データをリアルタイムで表示する高性能Kラインチャートをサポート。
- 分散取引システムに適したクロスプロセス通信コンポーネントを提供。
- 市場データを保存・管理する統合データ記録機能。
ヘルプの使用
設置プロセス
VeighNaのインストールには、基本的な環境の準備が必要です。以下に詳細な手順を示します:
- 環境を整える
- お使いのコンピュータにPython 3.7以上がインストールされていることを確認してください。公式ディストリビューションまたはVN Studio(VeighNaチームが提供する統合環境)のいずれかを推奨します。
- GitHubからコードをダウンロードするためにGitをインストールする。
- ソースコードのダウンロード
ターミナルで以下のコマンドを実行して、VeighNaリポジトリをローカルにクローンします:
git clone https://github.com/vnpy/vnpy.git
終了したら、プロジェクト・カタログにアクセスする:
cd vnpy
- 依存関係のインストール
プロジェクトのルート・ディレクトリで実行する:
pip install -r requirements.txt
これにより、VeighNaの実行に必要なPythonライブラリがインストールされます。特定のインターフェイス(CTPなど)が必要な場合は、追加のモジュールをインストールする必要があります:
pip install vnpy_ctp
- ランニングプログラム
設定ファイル(CTP接続情報など)を編集し、メインプログラムを実行する:
python examples/veighna_trader/run.py
グラフィカル・インターフェースがポップアップ表示され、取引ウィンドウが表示されます。
主な機能
1.接続性取引インターフェース
- VeighNaのメインインターフェイスを開き、"System "メニューをクリックし、"Connect Gateway "を選択します。
- 必要に応じてインターフェース(例:CTP)を選択し、口座番号、パスワード、サーバーアドレスを入力します。この情報はブローカーから提供されます。
- 接続」をクリックすると、ステータスバーに接続の成否が表示されます。
2.開発・運営戦略
- アプリケーション」メニューから「CTA戦略」を選択する。
- ポリシーの追加」をクリックし、ポリシーの名前とパラメータを入力します。VeighNaには、サンプルポリシーが付属しているか、カスタムライティングをサポートしています。
- 起動」をクリックすると、ストラテジーが自動的に実行され、マーケットを監視し、取引を執行する。
3.バックテスト分析
- CTA Backtest "モジュールを開き、ヒストリカルデータをインポートする。
- バックテストのパラメーター(例:時間枠、資本金、手数料)を設定し、ストラテジーを選択し、「バックテスト開始」をクリックします。
- バックテストが完了したら、リターンカーブと取引ログを表示し、戦略の有効性を分析する。
4.データ記録
- データ記録モジュールで、市場データソースに接続する。
- 記録頻度(TickまたはKラインなど)を設定し、"Start Recording "をクリックすると、データがローカル・データベースに保存される。
注目の機能操作
アルゴリズム取引
- アルゴリズム取引モジュールを開き、アルゴリズムを選択します(例:TWAP)。
- 数量や時間などの取引目標を入力し、"Start "をクリックすると、システムが自動的に注文を分割して執行します。
- パラメータはいつでも一時停止や調整が可能で、大規模な取引に適している。
Kラインチャート
- メイン画面の "Charts "をクリックし、マーケットデータを読み込む。
- ズームとドラッグをサポートし、テクニカル分析のためにティックまたはKラインのリアルタイム更新をサポートします。
ほら
- 初めて使用する場合は、ライブ取引のリスクを避けるためにデモ口座でテストすることをお勧めします。
- ネットワーク接続を確認し、データと取引注文の安定した伝送を確保する。
- VeighNaのコードを定期的に更新し、最新の機能と修正を行います:
git pull origin master
アプリケーションシナリオ
- 個人投資家向け取引
ある個人トレーダーが、Pythonを使って先物取引を自動化したいと考えています。彼はVeighNaを使ってCTPインターフェースに接続し、簡単な戦略を書き、主要な契約の売買を自動化することができます。 - 機関別定量調査
プライベート・エクイティ・ファンドは、新しい戦略をテストする必要があります。チームは、VeighNaのバックテスト・モジュールを使用して過去のデータをインポートし、戦略の有効性を迅速に検証しました。 - 高等教育における金融教育
大学教授はVeighNaを使って定量的取引の原理を示し、学生はグラフィカルなインターフェイスを通じて戦略開発とデータ分析を学ぶ。
品質保証
- VeighNa はどのオペレーティング・システムに対応していますか?
Windows 7以上、Ubuntu 18.04以上をサポート、Macシステムでは一部のインターフェースを手動でコンパイルする必要があります。 - コードを提供するには?
GitHubのVeighNaリポジトリをフォークし、変更を加え、Pull Requestを提出し、レビューとマージを待つ。 - データはどこから来るのか?
リアルタイムの市場データは、インターフェイス(TDデータなど)を通じてアクセスしたり、データ記録機能で保存したりできる。