Stratégies de trading basées sur l'oscillation des nombres premiers


Date de création: 2023-11-02 14:42:22 Dernière modification: 2023-11-02 14:42:22
Copier: 0 Nombre de clics: 797
1
Suivre
1617
Abonnés

Stratégies de trading basées sur l’oscillation des nombres premiers

Aperçu

Cette stratégie est basée sur l’indicateur de choc des nombres positifs pour juger de la tendance du marché et construire des positions longues et courtes. L’indicateur de choc des nombres positifs calcule la différence entre le nombre positif et le prix le plus proche du prix, la valeur positive indiquant une tendance à plusieurs niveaux et la valeur négative indiquant une tendance à la hausse.

Principe de stratégie

La stratégie commence par définir une fonction d’oscillateur de nombre premier, avec pour paramètres de base le prix et le pourcentage autorisé. Cette fonction recherche le plus grand nombre de nombres premiers qui se rapproche le plus du prix dans la plage de prix positif-négatif autorisé, et renvoie le différentiel entre les deux. Un différentiel supérieur à 0 indique une tendance à la hausse, et inférieur à 0 indique une tendance à la baisse.

Ensuite, dans la stratégie, l’appel de la fonction PrimeNumber Oscillator calcule la valeur xPNO. En fonction de xPNO, la direction de la position est jugée négative, et la direction de la transaction finale est déterminée par le reverseFactor.

La stratégie repose principalement sur l’indicateur d’oscillation des nombres premiers pour déterminer la direction de la tendance. L’indicateur lui-même est assez grossier et nécessite une combinaison d’autres facteurs pour vérifier les signaux de négociation.

Analyse des avantages

  • Basé sur des principes mathématiques, relativement objectif
  • Les tendances cachées dans les bouleversements
  • Flexibilité des paramètres et réglage de la sensibilité
  • Une approche simple, facile à comprendre et à optimiser

Analyse des risques

  • L’indicateur d’oscillation des masses est lui-même assez grossier et peut être mal interprété plusieurs fois.
  • Ne doit pas être utilisé seul et doit être vérifié en combinaison avec d’autres indicateurs techniques
  • Choisissez avec soin les paramètres, trop grands ou trop petits ne fonctionneront pas
  • La fréquence de négociation peut être trop élevée et la taille de la position doit être contrôlée

Direction d’optimisation

  • Les signaux de filtrage peuvent être combinés avec des indices tels que les moyennes mobiles, les surachats et les survente.
  • Vous pouvez ajouter des stratégies de stop loss pour réduire les pertes individuelles.
  • Le paramètre allowedPercent peut être modifié en fonction de la dynamique du marché
  • Optimisation de la gestion des positions, contrôle de la taille des positions par des indicateurs tels que le taux de volatilité

Résumer

Cette stratégie est basée sur le principe de l’oscillation des nombres positifs pour déterminer la direction de la tendance. Elle est simple et logiquement claire. Cependant, l’oscillation des nombres positifs elle-même a certaines limites et doit être utilisée avec prudence.

Code source de la stratégie
/*backtest
start: 2023-10-02 00:00:00
end: 2023-11-01 00:00:00
period: 1h
basePeriod: 15m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

//@version=2
////////////////////////////////////////////////////////////
//  Copyright by HPotter v1.0 29/03/2018
// Determining market trends has become a science even though a high number or people 
// still believe it’s a gambling game. Mathematicians, technicians, brokers and investors 
// have worked together in developing quite several indicators to help them better understand 
// and forecast market movements.
//
// Developed by Modulus Financial Engineering Inc., the prime number oscillator indicates the 
// nearest prime number, be it at the top or the bottom of the series, and outlines the 
// difference between that prime number and the respective series.
//
// You can change long to short in the Input Settings
// WARNING:
//  - For purpose educate only
//  - This script to change bars colors.
////////////////////////////////////////////////////////////
PrimeNumberOscillator(price, percent) =>
    res = 0
    res1 = 0
    res2 = 0
    for j = price to price + (price * percent / 100)
        res1 := j
	    for i = 2 to sqrt(price)
        	res1 := iff(j % i == 0 , 0, j)
            if res1 == 0 
                break
		if res1 > 0 
		    break
    for j = price to price - (price * percent / 100)
        res2 := j
	    for i = 2 to sqrt(price)
        	res2 := iff(j % i == 0 , 0, j)
            if res2 == 0 
                break
		if res2 > 0 
		    break
    res := iff(res1 - price < price - res2,  res1 - price, res2 - price)
    res := iff(res == 0, res[1], res)
    res
    
strategy(title="Prime Number Oscillator Backtest")
percent = input(5, minval=0.01, step = 0.01, title="Tolerance Percentage")
reverse = input(false, title="Trade reverse")
xPNO = PrimeNumberOscillator(close, percent)
pos = iff(xPNO > 0, 1,
       iff(xPNO < 0, -1, nz(pos[1], 0))) 
possig = iff(reverse and pos == 1, -1,
          iff(reverse and pos == -1, 1, pos))	   
if (possig == 1) 
    strategy.entry("Long", strategy.long)
if (possig == -1)
    strategy.entry("Short", strategy.short)	   	    
barcolor(possig == -1 ? red: possig == 1 ? green : blue ) 
clr = iff(xPNO > 0, green, red)
p1 = plot(xPNO, color=blue, title="KPO")
p2 = plot(0, color=black, title="0")
fill(p1,p2,color=clr)