Comments (8)
- 17.02.18: First results on applying guided policy search idea (GPS) to btgym setup:
https://github.com/Kismuz/btgym/blob/master/examples/guided_a3c.ipynb
Documentation on GPS API: https://kismuz.github.io/btgym/btgym.research.gps.html
- tensorboard summaries are updated with additional renderings: actions distribution, value function and LSTM_state; presented in the same notebook.
from btgym.
- 20.07.2018: major update to package:
-
enchancements to agent architecture:
- casual convolution state encoder with attention for LSTM agent;
- dropout regularization added;
-
strategy: new convention for naming
get_state
methods, seeBaseStrategy
class for details; -
multiply datafeeds and assets trading implemented in two flavors:
- discrete actions space via MultiDiscreteEnv class;
- continious actions space via PortfolioEnv which is closely related to
contionious portfolio optimisation problem setup;-
description and docs:
- MultiDataFeed: https://kismuz.github.io/btgym/btgym.datafeed.html#btgym.datafeed.multi.BTgymMultiData
- ActionSpace: https://kismuz.github.io/btgym/btgym.html#btgym.spaces.ActionDictSpace
- MultiDiscreteEnv: https://kismuz.github.io/btgym/btgym.envs.html#btgym.envs.multidiscrete.MultiDiscreteEnv
- PortfolioEnv: https://kismuz.github.io/btgym/btgym.envs.html#btgym.envs.portfolio.PortfolioEnv
-
examples:
-
- Notes on multi-asset setup:
- adding these features forced substantial package redesign;
expect bugs, some backward incompatibility, broken examples etc - please report; - current algorithms and agents architectures are ok with multiply data lines but seem not to cope well with multi-asset setup.
It is especially evident in case of continuous actions, where agents completely fail to converge on train data; - current reward function design seems inappropriate; need to reshape;
- continuous space in
beta
and still needs some improvement, esp. for broker order execution logic as well as
action sampling routine for continuous A3C (which is Dirichlet process by now); - multi-discrete space is more consistent but severely limited in number of portfolio assets (but not data-lines)
due to exponential rise of action space cardinality;
the option is to as use many datalines as desired while limiting portfolio to 1 - 4 assets; - no Guided Policy available for multi-asset setup yet - in progress;
- all but
episode
rendering modes are temporally disabled; - whole thing is shamelessly resource-hungry;
- adding these features forced substantial package redesign;
-
from btgym.
- 14.10.2018: update: base reward function redesign
- two aux. reward potential functions excluded ( -> reward bias removed);
- state potential function f1 computation logic redesigned making estimation less noisy and more consistent;
- results in noticeable performance gain; skip_frame parameter now can be set as low as 2 frames per action (was: ~10 for stable convergence).
from btgym.
-
11.12.2018: updates and fixes:
- training Launcher class got convenience features to save and reload model parameters, see https://github.com/Kismuz/btgym/blob/master/examples/unreal_stacked_lstm_strat_4_11.ipynb for details
- combined model-based/model-free approach package in early development stage is added to btgym.reserach
-
17.11.2018: updates and fixes:
- minor fixes to base data provider class episode sampling
update to btgym.datafeed.synthetic subpackage: new stochastic processes generators added etc.
new btgym.research.startegy_gen_5 subpackage: efficient parameter-free signal preprocessing implemented, other minor improvements
- minor fixes to base data provider class episode sampling
from btgym.
-
18.01.2019: updates:
-
data model classes are under active development to power model-based framework:
- common statistics incremental estimator classes has been added (mean, variance, covariance, linear regression etc.);
- incremental Singular Spectrum Analysis class implemented;
- for a pair of asset prices, two-factor state-space model is proposed
-
new data_feed iterator classes has been added to provide training framework with synthetic data generated by model mentioned above;
-
strategy_gen_6 data handling and pre-processing has been redesigned:
- market data SSA decomposition;
- data model state as additional input to policy
- variance-based normalisation for broker statistics
-
from btgym.
- 25.01.2019: updates:
- lstsm_policy class now requires both
internal
andexternal
observation sub-spaces to be present and allows both be one-level nested
sub-spaces itself (was only true forexternal
); all declared sub-spaces got encoded by separate convolution encoders; - policy deterministic action option is implemented for discrete action spaces and can be utilised by
syncro_runner
; by default it is enabled for test episodes;
- lstsm_policy class now requires both
from btgym.
- 9.02.2019:
- Introduction to analytic data model notebook added to model_based_stat_arb examples folder.
from btgym.
- 24.02.2019:
- Public Slack channel added. Join here.
from btgym.
Related Issues (20)
- Is there any real-life cases of successful application of reinforcement learning in trading / asset management? HOT 4
- Overestimated Value Function in Actor Critic Framework HOT 7
- signal.pause() - workers exit, but signal never received -- software issue? (debian linux) HOT 16
- loading multiple features - question ? HOT 3
- Amazing project <3
- PR Request for Docker addition HOT 2
- Train Test routine sampling - IndexError HOT 2
- BTgymMultiData - Sync between different data stream HOT 5
- Discussion: Long Episode Duration HOT 3
- Tutorial: Integration with TF-Agents RL Framework HOT 4
- Erroneous static_RNN policy behavior explanation.
- 2020
- BTGym Slack Join Link Broken HOT 1
- Problem with dependencies in installation on window HOT 1
- Examples that do more that randomly selects an action?
- Support Tensorflow 2 HOT 14
- ValueError: Axis limits cannot be NaN or Inf HOT 1
- INFOS
- Use btgym custom environment
- _pickle.PicklingError: Can't pickle <class 'pandas.core.frame.Pandas'>: attribute lookup Pandas on pandas.core.frame failed HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from btgym.