rltrader icon indicating copy to clipboard operation
rltrader copied to clipboard

main.py에서 delayed_reward_threshold 설정 값 질문

Open zeroyotta opened this issue 5 years ago • 1 comments

main.py에서 아래 코드를 보면 delayed_reward_threshold가 .2로 설정되어 있어 학습을 시켜보면 delayed_reward가 계속 0으로 나와 제대로 학습이 안되네요. 어느 정도로 설정하는 것이 좋을까요?

policy_learner = PolicyLearner( stock_code=stock_code, chart_data=chart_data, training_data=training_data, min_trading_unit=1, max_trading_unit=2, delayed_reward_threshold=.2, lr=.001)

zeroyotta avatar Mar 29 '19 01:03 zeroyotta

delayed_reward_threshold는 모델 학습을 위한 수익률 임계값으로 보시면 됩니다. 0.2는 20% 수익이 발생했을 때 이전 행동들을 학습하겠다는 것입니다.

의미있는 수익률이 발생하려면 종목에 따라서 초기 자본금, min_trading_unit, max_trading_unit 등을 적절히 정해야 합니다. 초기 자본금이 1000만원이고 주가가 10만원이고 trading_unit이 1주면 100번 매수 할 수 있는 상황입니다. 주가가 1만원이라면 trading_unit을 10주로 잡아야 100번 매수할 수 있겠습니다.

delayed_reward가 계속 0에 가깝게 나온다는 것은 초기 자본금이 매우 높고, 주가가 굉장히 낮으며 trading_unit도 적은 상황일 것 같습니다. 파라미터들을 적절히 조정해 주세요^^

quantylab avatar Mar 29 '19 02:03 quantylab