finmarketpy は Python ベースのライブラリで、市場データを分析したり、バックテストを定義するための事前構築されたテンプレートを備えた使いやすい API を使用して取引戦略のバックテストを行うこともできます。ライブラリに収録されている
このプロジェクトへの貢献者は大歓迎です。以下を参照してください。
私は以前、オープンソースの PyThalesians 金融ライブラリを作成しました (これはこれとマージされているため、1 セットのライブラリの保守に集中できます)。この新しい finmarketpy ライブラリには、
注意点:
取引戦略の累積収益を履歴的に計算します (finmarketpy_examples/tradingmodelfxtrend_example.py を参照)
戦略の活用度を時間の経過とともにプロットする
個々の取引リターンをプロットする
あらゆる資産の季節性を計算します。ここでは、金と為替のボラティリティの季節性を示します (examples/seasonality_examples.py を参照)。
アセットのイベントに基づいてイベント スタディを計算します (examples/events_examples.py を参照)
主な要件
finmarketpy とそれに関連する Python ライブラリの詳細なインストール手順については、https://github.com/cuemacro/finmarketpy/blob/master/INSTALL.md にアクセスしてください (Python 環境全体のセットアップ方法の詳細が含まれています)。
また、私の Python for Finance ワークショップ コースの https://github.com/cuemacro/teaching/blob/master/pythoncourse/installation/installing_anaconda_and_pycharm.ipynb もご覧ください。ここでは、データ サイエンス用の Anaconda 環境のセットアップについて特にメモを取っています。 (findatapy/chartpy/finmarketpy を含む)、YAML ファイルなどを含む。
以下を使用してライブラリをインストールできます (リリースではなく、リポジトリから最新バージョンを入手することをお勧めします)。
インストール後:
pip install git+https://github.com/cuemacro/finmarketpy.git
ただし、事前に、chartpy、findatapy、およびその他の依存関係の両方がすでにインストールされていることを確認してください。 chartpy では、chartconstants.py ファイルを変更する必要があります (Plotly API キーを追加するため)。また、findatapy の場合は、dataconstants.py ファイルを変更して Quandl API を追加する必要があります (おそらく、他の構成設定を変更するか、 datacred.py ファイルを util フォルダーに保存する場合、最初の実行時にインストールされる API キーの入力を求められます)。 git で pip を実行すると、最新のコミットが取得されます。
pip install git+https://github.com/cuemacro/chartpy.git
pip install git+https://github.com/cuemacro/findatapy.git
ただし、pip install して PyPI から取得することもできます (GitHub のバージョンよりわずかに古いバージョンである可能性があります)。
pip install chartpy
pip install findatapy
オプションの価格設定/総収益を使用する場合は、PyPI ではなく、GitHub https://github.com/domokane/FinancePy/ から最新の FinancePy バージョンを入手する必要がある場合があることに注意してください。
pip install git+https://github.com/domokane/FinancePy/FinancePy.git
Binder の一部の Jupyter ノートブックをブラウザーで対話的に実行して、finmarketpy を試すことができます。 Binder インスタンスが起動するまでに数分かかる場合があります。現在、Binder のノートブックをさらに増やすことに取り組んでいますので、楽しみにお待ちください。
これらの一部を使用するには、市場データをダウンロードするための Quandl API キーを取得する必要があることに注意してください。また、https://www.quandl.com で無料アカウントにサインアップできます。
この記事は、マスターの変更に合わせてフォークを更新する方法を説明するのに役立つと思いました。
finmarketpy、findatapy、chartpy への貢献者はいつでも歓迎されています。貢献したい場合は、私たちが支援を求めている分野の計画済みの機能をご覧ください。または、ライブラリの改善に関するアイデアがある場合は、ぜひお知らせください。
私たちは、Cuemacro で finmarketpy やその他のオープン ソース ライブラリの作成に長年費やしてきました。今後もそうしていきたいと考えています。
当社のライブラリを使用していて、Cuemacro のオープンソース ライブラリのスポンサーになることに興味がある場合は、https://github.com/sponsors/cuemacro の GitHub スポンサーシップ ページから行うことができます。
また、Cuemacro ライブラリに対して次のような商用サービスも提供しています。
弊社の商用サービスにご興味がございましたら、[email protected] までご連絡ください。
これらすべての資金源は、スポンサーシップであれ商業サービスであれ、Cuemacro のライブラリを維持するのに役立ち、コミュニティ向けにオープン ソース ライブラリを改善することができます。
finmarketpy の下では、financepy を使用してオプションの価格設定を行います。 Numba を使用して計算を高速化します。
Failed in nopython mode pipeline (step: nopython frontend)
などの Numba エラーが発生する場合があります。
これを修正する考えられる方法の 1 つは、financepy がインストールされている場所の下にある__pycache__
フォルダーを削除することです。
例えば。 py38class
環境を使用している場合、Anaconda をC:Anaconda3
にインストールしている場合は、以下の場所に Financepy フォルダーがある可能性があります。
C:Anaconda3envspy38classLibsite-packagesfinancepy
finmarketpy/examples には、いくつかの単純な取引モデルを含むいくつかの例があります。
メモの終わり