
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.
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.
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.
/*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)