Files
Freqtrade/tools/statistique/deriv1_deriv2.py
2025-05-16 21:56:14 +02:00

50 lines
1.8 KiB
Python

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.mplot3d import Axes3D
# Labels
x_labels = ['B5', 'B4', 'B3', 'B2', 'B1', 'N0', 'H1', 'H2', 'H3', 'H4', 'H5']
y_labels = ['B5', 'B4', 'B3', 'B2', 'B1', 'N0', 'H1', 'H2', 'H3', 'H4', 'H5']
# Data matrix
data = np.array([
[34.6, 16.8, 18.4, 14.9, 26.4, 11.9, 25.2, 33.9, 46.0, 56.9, 62.1],
[35.3, 29.0, 20.8, 20.3, 21.1, 19.2, 30.9, 42.5, 52.9, 62.6, 61.6],
[36.3, 31.6, 26.5, 24.5, 24.0, 25.4, 40.6, 48.0, 56.2, 64.0, 65.3],
[37.0, 34.7, 31.2, 27.6, 29.0, 31.8, 45.0, 53.5, 59.6, 64.2, 64.2],
[34.2, 35.3, 33.8, 33.3, 31.7, 43.1, 53.2, 59.9, 64.3, 64.0, 64.5],
[36.1, 37.0, 35.9, 37.5, 41.6, 56.3, 61.9, 66.1, 64.9, 66.4, 60.2],
[36.9, 37.5, 38.9, 44.3, 53.2, 66.1, 67.8, 67.0, 68.0, 67.6, 62.6],
[40.6, 37.1, 44.3, 51.3, 61.0, 73.7, 73.9, 70.6, 70.3, 68.3, 63.8],
[41.1, 40.6, 48.9, 55.5, 65.8, 80.0, 75.7, 76.6, 73.3, 68.4, 67.1],
[38.9, 43.0, 54.7, 66.3, 72.3, 81.5, 78.6, 77.6, 79.6, 71.8, 66.5],
[41.0, 46.8, 60.7, 75.2, 82.3, 89.3, 76.8, 80.9, 78.8, 83.7, 68.9]
])
# Meshgrid for 3D plotting
x = np.arange(len(x_labels))
y = np.arange(len(y_labels))
x, y = np.meshgrid(x, y)
z = data
# Plotting
fig = plt.figure(figsize=(12, 8))
ax = fig.add_subplot(111, projection='3d')
surf = ax.plot_surface(x, y, z, cmap='viridis', edgecolor='k')
# Axes settings
ax.set_xticks(np.arange(len(x_labels)))
ax.set_yticks(np.arange(len(y_labels)))
ax.set_xticklabels(x_labels)
ax.set_yticklabels(y_labels)
ax.set_xlabel('mid_smooth_deriv1_144_bin')
ax.set_ylabel('mid_smooth_deriv2_144_bin')
ax.set_zlabel('Probabilité de hausse (%)')
ax.set_title('Probabilité de hausse pour futur_percent_3h (%)')
# Colorbar
fig.colorbar(surf, ax=ax, shrink=0.5, aspect=10)
plt.tight_layout()
plt.show()