Stratégie de négociation de rupture des canaux de test arrière

Auteur:ChaoZhang est là., Date: 2023-09-20 17h02h40
Les étiquettes:

Résumé

Cette stratégie construit des canaux longs et courts, testant systématiquement les ruptures de canal.

La logique de la stratégie

  1. Construisez un canal long avec les prix les plus élevés sur une période, et un canal court avec les prix les plus bas.

  2. Achetez lorsque le prix dépasse la ligne supérieure du canal.

  3. Vendez lorsque le prix dépasse la ligne inférieure du canal.

  4. Peut définir une plage de dates de backtest pour vérifier la stratégie.

  5. Des règles simples et claires pour les écarts de canal.

Les avantages

  1. Les canaux définissent visuellement les fourchettes de prix.

  2. Une forte probabilité de dynamique haussière après une éruption.

  3. Le backtesting vérifie historiquement l'efficacité de la stratégie.

  4. Le concept de rupture de canal est simple et intuitif.

  5. Code concis, facile à modifier et optimiser.

Les risques

  1. Risques de fausses évasions et de retraits après l'évasion initiale.

  2. Aucun moyen efficace de régler les arrêts et les sorties.

  3. Des paramètres de canal incorrects affectent négativement les performances.

  4. Les résultats des tests antérieurs peuvent être biaisés.

  5. Les performances commerciales réelles peuvent être très différentes des backtest.

Amélioration

  1. Les paramètres d'essai pour trouver les combinaisons optimales.

  2. Ajoutez d'autres facteurs pour filtrer les fausses fuites.

  3. Mettre en place des mécanismes de stop loss et de profit.

  4. Traitez les données des backtests correctement pour éliminer les biais.

  5. Vérifier la stratégie dans diverses conditions de marché par le biais de backtest.

  6. Le commerce de papier pour configurer les paramètres de négociation en direct.

Conclusion

Cette stratégie met à l'épreuve des règles de rupture de canal simples, faciles à utiliser mais nécessitant un raffinement pour la stabilité.


/*backtest
start: 2023-08-20 00:00:00
end: 2023-08-30 00:00:00
period: 4h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=3
//strategy(title = "Backtest Donchian Teixeira", default_qty_type = strategy.fixed, default_qty_value = 100, overlay = true, commission_type = strategy.commission.cash_per_order, commission_value = 2.50, precision = 2, calc_on_every_tick = true, pyramiding = 0, initial_capital = 10000)

testStartYear = input(2000, "Backtest Start Year")
testStartMonth = input(1, "Backtest Start Month")
testStartDay = input(1, "Backtest Start Day")
testPeriodStart = timestamp(testStartYear, testStartMonth, testStartDay, 00, 00)

testEndYear = input(2018, "Backtest End Year")
testEndMonth = input(12, "Backtest End Month")
testEndDay = input(1, "Backtest End Day")
testPeriodEnd = timestamp(testStartYear, testStartMonth, testStartDay, 23, 59)

window()  => true //nao funciona

length1 = input(20, minval=1, title="Upper Channel")
length2 = input(20, minval=1, title="Lower Channel")

dcUpper = highest(length1)
dcLower = lowest(length2)

plot(dcLower, style=line, linewidth=1, color=red, offset=1)
plot(dcUpper, style=line, linewidth=1, color=lime, offset=1)
plot(dcLower, style=line, linewidth=1, color=gray)

if (strategy.position_size == 0)
    strategy.entry("COMPRA", true, stop = dcUpper)
    
if (strategy.position_size > 0)
    strategy.exit("VENDA", stop = dcLower)

Plus de