Les ressources ont été chargées... Je charge...

La stratégie de chasse à l'échec de Python

Auteur:L'inventeur de la quantification - un petit rêve, Créé: 2020-01-11 14:49:08, Mis à jour: 2023-10-17 21:28:09

img

La stratégie de chasse à l'échec de Python

Les stratégies de tendance utilisent généralement divers indicateurs pour juger de la direction du marché, en utilisant les résultats de la comparaison des valeurs de chaque indicateur comme signaux de trading. Ainsi, il est impossible d'éviter d'utiliser des paramètres, des indicateurs de calcul. Puisque les paramètres sont utilisés, il y a une situation appropriée.

Le code de la stratégie:

import time

basePrice = -1
ratio = 0.05
acc = _C(exchange.GetAccount)
lastCancelAll = 0
minStocks = 0.01

def CancelAll():
    while True : 
        orders = _C(exchange.GetOrders)
        for i in range(len(orders)) :
            exchange.CancelOrder(orders[i]["Id"], orders[i])
        if len(orders) == 0 :
            break
        Sleep(1000)

def main():
    global basePrice, acc, lastCancelAll
    exchange.SetPrecision(2, 3)
    while True:
        ticker = _C(exchange.GetTicker)
        if basePrice == -1 :
            basePrice = ticker.Last
        if ticker.Last - basePrice > 0 and (ticker.Last - basePrice) / basePrice > ratio :
            acc = _C(exchange.GetAccount)
            if acc.Balance * ratio / ticker.Last > minStocks :
                exchange.Buy(ticker.Last, acc.Balance * ratio / ticker.Last)
                basePrice = ticker.Last
        if ticker.Last - basePrice < 0 and (basePrice - ticker.Last) / basePrice > ratio : 
            acc = _C(exchange.GetAccount)
            if acc.Stocks * ratio > minStocks :
                exchange.Sell(ticker.Last, acc.Stocks * ratio)
                basePrice = ticker.Last
        ts = time.time()
        if ts - lastCancelAll > 60 * 5 :
            CancelAll()
            lastCancelAll = ts 
        LogStatus(_D(), "\n", "行情信息:", ticker, "\n", "账户信息:", acc)
        Sleep(500)

L'analyse stratégique est simple

Le principe de la stratégie est très simple: aucun indicateur n'est utilisé, le prix actuel est simplement utilisé comme base pour déclencher la transaction, et il n'y a qu'un seul paramètre principal.ratioIl est possible de contrôler le déclenchement de l'ouverture.

Il y a beaucoup de déclencheurs:

if ticker.Last - basePrice > 0 and (ticker.Last - basePrice) / basePrice > ratio

Utiliser le prix actuel, comparer le prix de base, lorsque le prix actuel est supérieur au prix de base et que le prix dépasseratio * 100 %Il y a un problème avec le fait que les utilisateurs de Twitter ne peuvent pas se connecter à Internet. Une fois la commande passée, le prix de base est mis à jour au prix actuel.

Les billets blancs ont déclenché:

if ticker.Last - basePrice < 0 and (basePrice - ticker.Last) / basePrice > ratio

Le principe est le même, en utilisant le prix actuel, pour comparer le prix de base, lorsque le prix actuel est inférieur au prix de base et que le prix dépasse le prix de base.ratio * 100 %Il y a un problème avec le fait que les utilisateurs utilisent des outils comme le logiciel de recherche. Une fois la commande passée, le prix de base est mis à jour au prix actuel.

La quantité d'ordres passée est la valeur des fonds disponibles.ratio * 100 %Je ne sais pas. À moins que le volume de la commande calculée soit inférieur au volume de transaction le plus bas du paramètreminStocksIl y a aussi des gens qui ont des problèmes de santé.

Les prix ont tendance à augmenter et à baisser, ce qui permet à la stratégie de suivre les changements de prix.

Le test de répétition

La période de réévaluation est d'environ un an.img

Les résultats:img

img

Les utilisateurs récents ont déclaré que les stratégies Python étaient moins nombreuses et ont partagé plus de stratégies écrites en Python. Le code des stratégies est également très simple et très adapté aux inventeurs pour quantifier l'apprentissage des débutants. L'adresse de la stratégie:https://www.fmz.com/strategy/181185

Les stratégies sont uniquement destinées à l'apprentissage de référence, aux tests de retouche et à l'optimisation des mises à niveau.


Relationnée

Plus de