Giter VIP home page Giter VIP logo

jpx1-3rd's Introduction

JPXファンダメンタルズ分析チャレンジ3位解法

概要

このリポジトリはSIGNATEで開催された日本取引所グループ ファンダメンタルズチャレンジ における3位入賞コードです。
7/22現在はコンペで用いられていたデータにアクセスできなくなっているため、再現することは難しいかもしれません。
SIGNATEのランタイムコンペに参加する際の、ひとつの書き方として参考にしていただければ幸いです。

準備

実行環境

signateのruntime環境と同一のdockerイメージ(continuumio/anaconda3:2019.03)を基に構築しています。

ディレクトリ構造

dataディレクトリにjpxのデータを配置してください。
コンペ時はdata/jpxにコンペページで配布されていたデータ、data/jpx_latestにAPIで取得した最新データをマージしたデータを配置していました。
すなわちdata/jpx_latestのデータはdata/jpxのデータを包含しているため、jpx_latestのみの準備で大丈夫です。
特にtrainの再現には2021年の3/26までのデータが準備されていれば十分です。

.
├── Makefile
├── README.md
├── configs
├── data
│  ├── jpx
│  │  ├── stock_fin.csv.gz
│  │  ├── stock_fin_price.csv.gz
│  │  ├── stock_labels.csv.gz
│  │  ├── stock_list.csv.gz
│  │  └── stock_price.csv.gz
│  └── jpx_latest
│      ├── stock_fin.csv.gz
│      ├── stock_labels.csv.gz
│      ├── stock_list.csv.gz
│      └── stock_price.csv.gz
├── docker
├── external
├── setup.py
├── src
├── submit_works
├── tools
└── work_dirs

実行手順

train

optunaでハイパラサーチをしたあと、3つのseedで高値予測/安値予測のモデルをlightGBMで学習します。
すなわち提出用に6つのモデルが用意されます。 学習のログやモデルはwork_dirs/fsub1に出力されます。

$ export COMMAND="python tools/train.py fsub1 --data_dir ./data/jpx_latest --train_all --tune_hp"
$ make docker-run

validation

predictor.pyを使ってvalidationを行うコマンドです。
predictor.pyはsubmit_works/fsub1以下に用意されています。
具体的にはtrainで生成したwork_dirs/fsub1以下のモデルをsubmit_works/fsub1/modelにコピーして、validationを行います。

$ export SUBMIT_NAME=fsub1
$ make docker-validate-submit-files 

提出ファイルの作成

提出ファイルのsubmit.zipを作成するコマンドです。
validationと同様に、trainで生成したモデルをsubmit_worksにコピーし、動作を確認したあとzipファイルをwork_dirs/fsub1に作成します。

$ export SUBMIT_NAME=fsub1
$ make docker-create-submit-files

jpx1-3rd's People

Contributors

nyoki-mtl avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.