The trading environment

As we have lots of code that is supposed to work with OpenAI Gym, we’ll implement the trading functionality following Gym’s Env class API, which should be familiar to you. Our environment is implemented in the StocksEnv class in the Chapter08/lib/environ.py module. It uses several internal classes to keep its state and encode observations. Let’s first look at the public API class.

class Actions(enum.Enum):
    Skip = 0
    Buy = 1
    Close = 2

We encode all available actions as an enumerator’s fields. We support a very simple set of actions with only three options: do nothing, buy a single share, and close the existing position.

class StocksEnv(gym.Env):
    metadata = {‘render.modes’: [‘human’]}

This metadata field is required the for

Get Deep Reinforcement Learning Hands-On now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.