Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- GRAFICO 3D BASATO SULLE OTTIMIZZAZIONI PER NON CREARE OVERFITTING
- IN QUESTO PROGRAMMA I DATI SONO CARICATI DEL REPORT DI BACKTRADER DA PYTHON
- LA VARIABILE DI RIFERIMENTO CHE CONTIENE LE OTTIMIZZAZIONE E': dfOpt
- py -m pip install numpy
- py -m pip numpy
- py -m pip matplotlib
- import numpy as np
- import pandas as pd
- from mpl_toolkits.mplot3d import Axes3D
- import matplotlib.pyplot as plt
- #############################################################################
- # strategia di cerebro con inclusa l'ottimizzazione che salva nel dataframe
- # dfOpt tutti i risultati
- # In questo esempio si e' usata la strategia TrendWide con EmaLenta=30..80 e EmaVeloce=2..18
- #############################################################################
- uscita=dfOpt.to_string(columns=['EmaVeloce','EmaLenta','NetTotal'],index=False,header=False)
- with open('test.txt','w') as f:
- f.write(uscita)
- x,y,z = np.loadtxt('test.txt', unpack=True)
- df = pd.DataFrame({'x': x, 'y': y, 'z': z})
- fig = plt.figure()
- ax = Axes3D(fig)
- surf = ax.plot_trisurf(df.x, df.y, df.z, cmap=cm.jet, linewidth=0.1)
- fig.colorbar(surf, shrink=0.5, aspect=5)
- plt.savefig('output_3D.pdf')
- plt.show()
- --------------------------------------------------------------
- In pratica vengono salvate nel file ‘test.txt’ le tre colonne di interesse del dataframe dfOpt.
- Due riguardano i parametri da ottimizzare, la terza il NetTotal. Il risultato che si ottiene e’ un grafico interattivo:
- --------------------------------------------------------------
Add Comment
Please, Sign In to add comment