ZhengyaoJiang / PGPortfolio

PGPortfolio: Policy Gradient Portfolio, the source code of "A Deep Reinforcement Learning Framework for the Financial Portfolio Management Problem"(https://arxiv.org/pdf/1706.10059.pdf).
GNU General Public License v3.0
1.74k stars 750 forks source link

'./train_package/train_summary.csv' was not produced. #7

Closed iamadog3333 closed 6 years ago

iamadog3333 commented 6 years ago

As the user guide, First,I trained the mode:python main.py --mode=train --processes=1 Second, I run a back-test: python main.py --mode=backtest --algo=1 It seems successed. Third, I run a plot. It failed. The programm need a file './train_package/train_summary.csv'. But the file was not produced by the train or back-test process. Progaram out put detail:

..............

the step is 2775 the raw omega is [ 0.00000000e+00 1.67575441e-02 8.37479383e-02 6.0264140 4e-01 2.47207396e-02 4.36192416e-02 1.71170235e-02 1.87526122e-01 2.03962550e-02 8.20985821e-04 2.59831552e-07 2.65252125e-03] the portfolio change this period is : 1.0040169427478371 a new experience, indexed by 35024, was appended total assets are 2.016892 BTC

(TensorFlow) D:\work\benew\backTest\PGPortfolio-master>python main.py --mode=plo t --algos=1 --labels=crp,olmar,nnagent D:\work\benew\backTest\PGPortfolio-master\pgportfolio\resultprocess\plot.py:164: FutureWarning: from_csv is deprecated. Please use read_csv(...) instead. Note t hat some of the default arguments are different, so please refer to the document ation for from_csv when changing your function calls dataframe = pd.DataFrame.from_csv("./train_package/train_summary.csv") Traceback (most recent call last): File "main.py", line 132, in main() File "main.py", line 97, in main plot.plot_backtest(load_config(), algos, labels) File "D:\work\benew\backTest\PGPortfolio-master\pgportfolio\resultprocess\plot .py", line 52, in plot_backtest results.append(np.cumprod(_load_from_summary(algo, config))) File "D:\work\benew\backTest\PGPortfolio-master\pgportfolio\resultprocess\plot .py", line 164, in _load_from_summary dataframe = pd.DataFrame.from_csv("./train_package/train_summary.csv") File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\core\f rame.py", line 1361, in from_csv infer_datetime_format=infer_datetime_format) File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\io\par sers.py", line 705, in parser_f return _read(filepath_or_buffer, kwds) File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\io\par sers.py", line 445, in _read parser = TextFileReader(filepath_or_buffer, kwds) File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\io\par sers.py", line 814, in init self._make_engine(self.engine) File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\io\par sers.py", line 1045, in _make_engine self._engine = CParserWrapper(self.f, self.options) File "C:\ProgramData\Anaconda3\envs\TensorFlow\lib\site-packages\pandas\io\par sers.py", line 1684, in init self._reader = parsers.TextReader(src, **kwds) File "pandas_libs\parsers.pyx", line 391, in pandas._libs.parsers.TextReader. cinit File "pandas_libs\parsers.pyx", line 710, in pandas._libs.parsers.TextReader. _setup_parser_source FileNotFoundError: File b'./train_package/train_summary.csv' does not exist

dexhunter commented 6 years ago

Please check #5 .

ZhengyaoJiang commented 6 years ago

The whole training progress started by python main.py --mode=train --processes=1 includes two steps. The pre-training and backtest, and the train_summary will not be generated until the backtest step is finished. It is not necessary to execute a backtest by yourself.

If you didn't find the train_summary it might mean the training progress is interrupted.