Hacker News new | ask | show | jobs
by Emsu 4230 days ago
If you look at: https://github.com/Emsu/prophet/blob/master/prophet/data.py

There's a PandasDataGenerator which is a wrapper around the pandas libary's DataReader. For the Yahoo source, you can have the following data options: "Open", "High", "Low", "Close", "Volume", "Adj Close". The YahooCloseData generator actually uses "Adj Close". You can implement high, low or open by copying the YahooCloseData generator and getting the respective key instead of "Adj Close". Feel free to contribute these generators upstream too :)

If you're looking for modeling out the uncertainty, see the slippage section in:

http://prophet.michaelsu.io/en/latest/advanced.html#slippage...

If you have a dataset that provides more frequent than daily data, you can store the sell order on your order generator and process it the next tick. That combined with slippage and commission will probably give you the most accurate trading model.

Let me know if you have any other thoughts on how it can be better modeled.

1 comments

Please don't use Adjusted Close for backtesting execution. Adjusted prices are not real. They never happened, and using them will add unknown error to your backtest results.

Back adjusted prices are fine for building a model, but when back testing the model and simulating executions, you should always use real prices.

You're right. I really need to bite the bullet and generate stock split data. That was the main reason I used adjusted because splits were skewing my tests a lot.