EmpezarEmpieza gratis

Evalúa nuestros resultados

Una vez que tenemos el ajuste lineal y las predicciones, queremos ver qué tal son para decidir si nuestro modelo merece la pena o no. Idealmente, querríamos hacer un backtest de cualquier estrategia de trading. Sin embargo, esto es complejo y suele llevar tiempo.

Una forma más rápida de entender el rendimiento del modelo es mirar métricas de evaluación de regresión como R\(^2\) y representar las predicciones frente a los valores reales de los objetivos. Unas predicciones perfectas formarían una línea recta y diagonal en ese gráfico, lo que nos permite estimar visualmente cómo funcionan las predicciones en distintas zonas de cambios de precio. Podemos usar la función .scatter() de matplotlib para crear diagramas de dispersión de las predicciones y los valores reales.

Este ejercicio forma parte del curso

Machine Learning para finanzas con Python

Ver curso

Instrucciones del ejercicio

  • Muestra test_predictions frente a test_targets en un diagrama de dispersión, con un 20% de opacidad en los puntos (usa el parámetro alpha para fijar la opacidad).
  • Traza la línea de predicción perfecta usando np.arange() y los valores mínimo y máximo del eje x (xmin, xmax).
  • Muestra la leyenda en el gráfico con plt.legend().

ejercicio interactivo práctico

Prueba este ejercicio completando este código de ejemplo.

# Scatter the predictions vs the targets with 20% opacity
plt.scatter(train_predictions, train_targets, alpha=0.2, color='b', label='train')
plt.scatter(____, ____, ____, color='r', label='test')

# Plot the perfect prediction line
xmin, xmax = plt.xlim()
plt.plot(np.arange(xmin, xmax, 0.01), np.arange(____, ____, 0.01), c='k')

# Set the axis labels and show the plot
plt.xlabel('predictions')
plt.ylabel('actual')
____  # show the legend
plt.show()
Editar y ejecutar código