GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

cuemacro

finmarketpy – バックテスティングトレーディング戦略と金融市場分析のためのPythonライブラリ(旧Pythalesians)

投稿日:

バックテスティングトレーディング戦略と金融市場分析のためのPythonライブラリ(旧Pythalesians) http://www.cuemacro.com

finmarketpy(以前のpythalesians)

finmarketpyはPythonベースのライブラリで、バックテストを定義するためのテンプレートが事前作成されているシンプルなAPIを使用してマーケットデータを分析したり、トレーディング戦略をバックテストしたりすることができます。 図書館に含まれています

  • バックテスティングトレーディング戦略のための事前構築されたテンプレート
  • トレーディング戦略の履歴リターンを表示する
  • トレーディング戦略の季節性を調査する
  • データイベントに関する市場イベント調査を実施する
  • ボラティリティのターゲティングを使用したリスク加重のための構築された電卓
  • コードをより再利用可能にするオブジェクト指向の方法で書かれています

プロジェクトの貢献者は非常に歓迎されており、以下で販売しています!

ピエロ人との合併

私は以前にオープンソースのPyThalesians金融ライブラリを作成しました(このライブラリは、これと統合されていますので、ライブラリ一式を管理することに集中できます)。 この新しいfinmarketpyライブラリには

  • ピタレシア人の取引部と同様の機能
  • APIを書き直し、多くの新機能を追加するだけでなく、よりクリーンで使いやすくしました。
  • finmarketpyは、chartpy(チャート用)とfindatapy(市場データの読み込み用)を機能させるためのライブラリを必要とします
  • より小さなより専門化されたライブラリに分割することで、貢献者にとってより簡単になるはずです
  • findatapyを使用すると、Bloomberg、Quandl、Yahooなどから市場データを簡単にダウンロードできます
  • chartpyを使用すると、matplotlib、plotly、またはbokehの結果を単一のキーワードを変更して表示させることができます!

注意すべき点:

  • 現在、finmarketpyは継続的に開発されています。 APIは大きく文書化されていますが、より一般的なドキュメントを追加しようとしています。
  • Apache 2.0ライセンスを使用する

ギャラリー

歴史的に貿易戦略の累積リターンを計算する(finmarketpy_examples / tradingmodelfxtrend_example.pyを参照)

時間の経過に伴う戦略の活用をプロット

個々の貿易収入をプロットする

あらゆる資産の季節性を計算する:ここでは、金とFXのボラティリティの季節性を示します(examples / seasonality_examples.pyを参照)

アセットのイベントに関するイベントスタディを計算する(examples / events_examples.pyを参照)

要件

主な要件

インストール

finmarketpyとそれに関連するPythonライブラリの詳しいインストール手順については、 https://github.com/cuemacro/finmarketpy/blob/master/INSTALL.md (Python環境全体の設定方法の詳細を参照)にアクセスしてください

以下の方法でライブラリをインストールすることができます(リリースではなく、リポジトリから最新のバージョンを入手する方がよい)。

インストール後:

  • MarketConstantsファイルを編集してください
pip install git+https://github.com/cuemacro/finmarketpy.git

しかし、事前にchartpy、findatapy、およびその他の依存関係の両方をインストール済みであることを事前に確認してください。 chartpyでは、ChartConstantsファイルを変更して(Plotly APIキーを追加する)、findatapyにはQuandl APIを追加するためにDataConstantsファイルを変更する必要があります(場合によっては他の設定も変更する必要があります)。

pip install git+https://github.com/cuemacro/chartpy.git
pip install git+https://github.com/cuemacro/findatapy.git

貢献者

貢献者は、常にfinmarketpy、findatapy、chartpyを歓迎します。 貢献したい場合は、助けを求めている地域の[計画された機能](PLANNED_FEATURES.md)をご覧ください。また、ライブラリの改善のためのアイデアがあればお知らせください。

finmarketpyの例

finmarketpy / examplesには、いくつかの簡単な取引モデルを含むいくつかの例があります

リリースノート

  • 0.11 – finmarketpy
  • 最初の試用版

コーディングログ

finmarketpyログ

  • 2018年4月18日 – トレード概念的なサイズの不具合を修正
  • 2018年4月6日 – 商取引上の想定サイズの周波数を測定する機能が追加されました
  • 2018年3月29日 – P&LのCSVをダンプする際のバグ修正
  • 2018年3月15日 – イベントデータのキャッシュを追加
  • 2018年2月26日 – tech_paramsの下のパラメータを置き換えるための追加されたソリューション(tradeanalysis.py内)。
  • 2018年1月30日 – backtest.example.pyのバグを修正
  • 2018年1月25日 – クラスのバグ修正
  • 2018年1月4日 – クレジットの定数のオーバーライドに関するバグ修正
  • 2017年9月16日 – 計画された機能リストに追加
  • 2017年7月10日 – condaのインストール手順が追加されました
  • 2017年7月3日 – 季節図書館の依存関係の修正
  • 2017年6月26日 – BacktestEngineは加重和スタイルのポートフォリオを処理できるようになりました
  • 2017年6月23日 – 経済データの観測日をダウンロードする(EventStudy)
  • 2017年6月21日 – ブルームバーグの総返品データ
  • 2017年6月7日 – 感度分析(TradeAnalysis)にIR / Retsの出力を追加
  • 2017年5月22日 – 戦略の返品を出力する(CSVファイルへ)
  • 2017年5月3日 – 予定機能の追加
  • 2017年4月13日 – モデルに続くFXトレンドの終了日を変更
  • 2017年3月12日 – 追加されたFXボリュームのサーフェスアニメーションの例
  • 2017年2月25日 – 信号遅延パラメータを追加
  • 2017年2月24日 – リファクタリングされたバックテストクラスの名前が一貫しています
  • 2017年2月21日 – SwimPoolを使用するリファクタリングされたBacktestEngine
  • 2017年2月20日 – 追加インストール手順
  • 2017年2月14日 – 計画機能の追加ページ
  • 2012年2月08日 – TradingModelのSHOW_CHARTSパラメータが追加され、古いパンダでSMAが動作しました
  • 2017年2月5日 – 名目が指定されていない場合、TradeAnalysisにインストールノートと固定Excelの出力を追加
  • 2017年2月2日 – 最大長/短期に関する制約のさらなる変更(リファクタリングを使用)
  • 2017年2月1日 – BacktestEngineの最大ロング/ショートとプロットに対する制約を追加
  • 2017年1月25日 – TradeAnalysisの複数の資産を利用したスト​​ップ/利益獲得のための追加作業とバグ修正のプロット
  • 2017年1月24日 – TechParamsでストップ/利益獲得とフィールド追加に関する問題を修正
  • 2017年1月19日 – プロジェクト内のサンプルの場所を変更する
  • 2017年1月16日 – P&LのデバッグのためのBacktestEngineのメソッドの追加(シグナル/アセット/リターンのダンプテーブル)
  • 2017年1月12日 – 詳細なインストールノートを追加
  • 2017年1月11日 – 多数のコメントを書き直し、ATR計算と基本的なストップロス/利益獲得機能を追加
  • 2017年1月7日 – ユーザー定義の契約サイズで概念的にスケールされた位置サイズを出力するようになりました
  • 2017年1月6日 – 戦略と一般的なバグ修正のためにユーザー定義の重みを追加
  • 2017年1月04日 – レバレッジを計算するための期間シフトパラメータを追加しました(RiskEngine内)
  • 2016年11月30日 – NFPの季節性の例を追加
  • 2016年11月24日 – ガソリンの季節性の例の追加
  • 2016年11月17日 – TradingModelのデフォルトのソースをChartConstantsに変更しました
  • 2016年10月14日 – MarketConstantsでの北極参照の修正
  • 2016年10月13日 – BacktestEngineの固定IRプロット、YoYメトリックプロット追加
  • 2016年10月11日 – TradeAnalysisにポートフォリオのリターン統計をプロットする別の方法を追加
  • 2016年10月10日 – finmarketpyを使用してPyFolioを使用する方法を示すreturns_exampleを追加し、TradeAnalysisのデータフレーム入力を追加し、readmeの固定タイポを追加しました
  • 2016年10月7日 – .ideaを.gitignoreに追加
  • 2016年10月6日 – 取引とポジションの比率のプロットを分割
  • 2016年9月22日 – 信号プロット時の列の固定ソート
  • 2016年9月21日 – 複数の信号日のプロットを許可する
  • 2016年9月15日 – finmarketpyとpythalesiansを完全に統合し、バージョン0.11をリリース
  • 2016年9月12日 – TradeAnalysis(メソッド名)の問題を修正
  • 2016年9月2日 – 外部データフレームエコイベントの問題を修正し、イベントスタディの例を追加
  • 2016年9月1日 – FX volの季節例の追加
  • 2016年8月22日 – ブート問題の修正とクレデンシャルの追加
  • 2016年8月17日 – 最初のコードをアップロードしました

パイオニア人のログ

  • 2016年8月3日 – 不足しているconfファイルを修正しました
  • 2020年8月2日 – デフォルトの変更AdapterTemplateでの背景色と固定定数のPlotly問題
  • 2016年8月1日 – 彫刻家として名前を変更したpythalesians_graphics(最終スピンアウトの準備)
  • 2016年7月29日 – 複数のライブラリでプロットするためのJupyterノートブックplot_market_dataの作成、Bokehサイジングの問題の修正、ライブラリのリファクタリング、pythalesians_graphicsへのチャート機能のスピンアップ
  • 2016年7月28日 – Quandlから返された複数のフィールドの問題を修正し、Quandlのダウンロード例を追加
  • 2016年7月26日 – Plotlyチャートの追加サポート、surface vol追加Plotly example
  • 2016年7月21日 – Refactor StrategyTemplateグラフプロット関数
  • 2016年7月20日 – AdapterPyThalesiansのフィギュアハンドルの返却
  • 2016年6月8日 – 尖度問題を修正し、CashBasktestでリファクタリングされたvolのスケーリングを行い、TimeSeriesFilterのリサンプルラッパーを追加しました
  • 2016年6月3日 – CashBacktestのスピードアップ(construct_strategyメソッド)
  • 2016年6月2日 – インストール時にStrategyTemplateファイルが見つからない問題を修正し、パスの自動検出機能を追加してインストールを簡素化し、pandasとbcolzの間の変換方法を追加しました。
  • 2016年5月31日 – TechIndicatorで廃止予定のPandasメソッドを削除
  • 2016年5月27日 – ある時点の戦略信号をプロットする機能の追加
  • 2016年5月19日 – 新しいQuandl APIを使用するようにQuandlラッパーを更新
  • 2016年5月2日 – BacktestRequestを整理し、SPXの季節例を追加
  • 2016年4月28日 – 更新されたキャッシュバックテスト(パンダ0.18用)
  • 2016年4月21日 – EventStudyで廃止予定のPandasメソッドを削除
  • 2016年4月18日 – Pandas 0.18との非互換性の問題を修正
  • 2016年4月6日 – 追加の貿易統計情報の出力
  • 2016年4月1日 – 結合作業のスピードアップ、高周波数時系列の取り込み時に目立つ
  • 2016年3月21日 – IPythonノートブックを追加して、トレーディング戦略に従ってシンプルFXの傾向をバックテストする方法をデモンストレーションしました
  • 2016年3月19日 – Python 3.5 64ビットでテスト済み(Windows 10ではAnaconda 2.5)
  • 2016年3月17日 – グラフ/時系列関数とStrategyTemplateのいくつかをリファクタリング
  • 2016年3月11日 – matplotlib 1.5の修正された警告
  • 2016年3月9日 – TradeAnalysisの機能を追加しました(トレーディング戦略の感度分析用)
  • 2016年3月1日 – 市場データをダウンロードしてプロットする方法を示すIPythonノートブックを追加
  • 2016年2月27日 – 固定合計はFXの例を返します
  • 2016年2月20日 – StrategyTemplateのパラメータを追加しました
  • 2016年2月13日 – 編集時系列フィルタメソッド
  • 2016年2月11日 – USDJPYスポットに対するBoJの介入をプロットするための追加例
  • 2016年2月10日 – 更新されたプロジェクトの説明
  • 2016年2月1日 – econデータイベント(HDF5ファイルとして保存)を扱いやすくするLightEventsFactoryが追加されました。
  • 2016年1月20日 – トレーディング戦略の結果のクルトシス対策、Quandlの問題の修正
  • 2016年1月19日 – 変更された例のフォルダ名
  • 2016年1月15日 – FX相関関係のオン/オフリスクの追加例
  • 2016年1月5日 – FXの総収益率(スポット)指数の作成とサンプル
  • 2015年12月26日 – econデータダウンローダの問題を修正
  • 2015年12月24日 – カスタムインジケータを作成するためのデータファクトリテンプレートの追加
  • 2015年12月19日 – Refactored Dukascopyダウンローダ
  • 2015年12月10日 – さまざまなバグ修正
  • 2015年11月22日 – バックテスティングを行うためのボリュームターゲティング機能の強化
  • 2015年11月7日 – Bloombergからダンプデータをダウンロードする機能の追加(例)
  • 2015年11月5日 – 追加された日中イベント学習クラス(および例)
  • 2015年11月2日 – ローリング相関を実行するための簡単なラッパーを追加(および例)
  • 2015年10月28日 – トレーディング戦略に対する感度分析の追加
  • 2015年10月26日 – Bloomberg Open APIダウンローダのさまざまなバグ修正
  • 2015年10月14日 – 市場データ(スレッド/マルチプロセッシングライブラリ)の並列ダウンロードを可能にし、ベンチマークの例とBloombergダウンローダのバグ修正
  • 2015年9月25日 – 異なるフォルダにリファクタリングされたサンプル/より多くの季節性の例
  • 2015年9月19日 – Plotly choroplethマッププロットのサポートと、FRED / Bloomberg / Quandl経由の経済データの簡単ダウンロード
  • 2015年9月12日 – 戦略の統計分析のためのPyFolioの基本サポートを追加しました
  • 2015年9月4日 – バックテスト(例)とバグ修正用のStrategyTemplateの追加
  • 2015年8月21日 – スタックチャート(matplotlib&bokeh付き)といくつかのバグ修正
  • 2015年8月15日 – 棒グラフ(matplotlib&bokeh付き)を追加し、さらに時系列フィルタ関数を追加
  • 2015年8月9日 – Bokehサポートの改善
  • 2015年8月7日 – Plotlyサポートの追加(Jorge Santos Cufflinksラッパー経由)
  • 2015年8月4日 – FREDからダウンロードする機能と、FREDからダウンロードする機能を追加しました。
  • 2015年7月29日 – バックテスト機能(単純なFXトレンドフォロー戦略を含む)とさまざまなバグの修正/コメントを追加しました。
  • 2015年7月24日 – シンプルな季節調査を行うための機能が追加され、サンプルが追加されました。
  • 2015年7月17日 – テクニカルインディケーターの使用方法を示す例を作成しました。
  • 2015年7月13日 – confの場所が変更され、examplesフォルダの名前がpythalesians_examplesに変更されました。 setup.pyを使用してインストールできるようになりました。
  • 2015年7月10日 – Dukascopy FXのティックデータをダウンロードできるようになりました(データは個人的には無料です – Dukascopyの利用規約を確認してください)。 データの過去1ヶ月は一般的にDukascopy

メモの終わり







-cuemacro
-, ,

執筆者: