Releases: pythonlessons/FinRock
Releases · pythonlessons/FinRock
0.5.0
[0.5.0] - 2024-01-30
Added:
- Added
MACDindicator toindicatorsfile. - Added
reward.AccountValueChangeRewardobject to calculate reward based on the change in the account value. - Added
scalers.ZScoreScalerthat doesn't require min and max to transform data, but uses mean and std instead. - Added
ActionSpaceobject to handle the action space of the agent. - Added support for continuous actions. (float values between 0 and 1)
Changed:
- Updated all indicators to have
configparameter, that we can use so we can serialize the indicators. (save/load configurations to/from file) - Changed
reward.simpleRewardtoreward.SimpleRewardObject. - Updated
state.Stateto haveopen,high,low,closeandvolumeattributes. - Updated
data_feeder.PdDataFeederto be serializable by includingsave_configandload_configmethods. - Included trading fees into
trading_env.TradingEnvobject. - Updated
trading_env.TradingEnvto haveresetmethod, which resets the environment to the initial state. - Included
save_configandload_configmethods intotrading_env.TradingEnvobject, so we can save/load the environment configuration.
0.4.0
[0.4.0] - 2024-01-02
Added:
- Created
indicatorsfile, where I addedBolingerBands,RSI,PSAR,SMAindicators - Added
SharpeRatioandMaxDrawdownmetrics tometrics - Included indicators handling into
data_feeder.PdDataFeederobject - Included indicators handling into
state.Stateobject
Changed:
- Changed
finrockpackage dependency from0.0.4to0.4.1 - Refactored
render.PygameRenderobject to handle indicators rendering (getting very messy) - Updated
scalers.MinMaxScalerto handle indicators scaling - Updated
trading_env.TradingEnvto raise an error withnp.nandata and skipNonestates
0.3.0
[0.3.0] - 2023-12-05
Added:
- Added
DifferentActionsandAccountValueas metrics. Metrics are the main way to evaluate the performance of the agent. - Now
metrics.Metricsobject can be used to calculate the metrics within trading environment. - Included
rockrl==0.0.4as a dependency, which is a reinforcement learning package that I created. - Added
experiments/training_ppo_sinusoid.pyto train a simple Dense agent using PPO algorithm on the sinusoid data with discrete actions. - Added
experiments/testing_ppo_sinusoid.pyto test the trained agent on the sinusoid data with discrete actions.
Changed:
- Renamed and moved
playing.pytoexperiments/playing_random_sinusoid.py - Upgraded
finrock.render.PygameRender, now we can stop/resume rendering with spacebar and render account value along with the actions