Le trading système valide les stratégies basées sur les données historiques du cours des actions.
Par exemple, les résultats de vérification suivants sont les résultats de vérification d'un certain ordre.
Cependant, il ne s'agit que d'une évaluation dans un scénario.
Par conséquent, j'ai utilisé Python pour évaluer les résultats de plusieurs simulations du taux de gain, du taux de profit, du taux de profit / perte et du montant des fonds de la stratégie terminée.
#Présentation de la bibliothèque
import pandas as pd
import matplotlib.pyplot as plt
import random
#Fonction d'évaluation
#actif Capital initial
#Quel pourcentage de capital de pari investir
#Probabilité Taux de victoire
#gagner une marge bénéficiaire moyenne
#taux de perte moyen
#transaction Nombre de transactions
def sim(asset, bet, probability, win, loss, transaction):
result = []
for i in range(transaction):
#Gagnez si le nombre aléatoire est inférieur au taux de gain
if random.random() < probability:
#Les actifs augmentent de la marge bénéficiaire moyenne multipliée par les actifs d'entrée.
#Cette fois, il s'agit d'un intérêt composé, mais si vous modifiez cette zone, vous pouvez en faire un intérêt simple.
asset = asset + (asset * bet * win)
#Si vous perdez, le taux de perte moyen multiplié par les actifs investis diminuera.
else:
asset = asset - (asset * bet * loss)
#Enregistrer les résultats de la transaction dans une liste.
result.append(asset)
return result
#Fonction d'évaluation 2
def mon(asset, bet, probability, win, loss, transaction=100, test=1):
df = pd.DataFrame()
#Appelez la fonction d'évaluation pour le nombre d'essais et stockez-la dans la trame de données.
for i in range(test):
df[i] = sim(asset, bet, probability, win, loss, transaction)
#affichage graphique
#Paramètres des lignes auxiliaires
xmin = -3
xmax = transaction
#Réglage de la taille du bluff
plt.figure(figsize=(25, 15), dpi=50)
plt.plot(df)
#Réglage de la ligne auxiliaire
plt.hlines([asset], xmin, xmax, "blue")
plt.show()
#Affichage des éléments statistiques
print(df.iloc[transaction - 1].describe())
#Montant des fonds 300, risque 20%, Taux de victoire 61.54% de marge bénéficiaire moyenne 5.83% de taux de perte moyen 4.63% Vérifions avec 250 métiers et 300 essais.
mon(300, 0.2, 0.6154, 0.0583, 0.0463, 250, 300)
Si vous regardez cela, vous pouvez voir qu'il y a des cas où les bénéfices n'augmentent pas jusqu'à environ 50 transactions.
Dans une autre stratégie,
était.
C'est plus stable et les actifs augmenteront.
Cette fois, nous extrayons des valeurs telles que le taux de victoire et le taux de profit moyen de la stratégie terminée, donc Je ne sais pas si c'est statistiquement valide.
Que pensez-vous les gars?
Recommended Posts