प्राइम नंबर ऑसिलेटर ट्रेडिंग रणनीति

लेखक:चाओझांग, दिनांक: 2023-11-02 14:42:22
टैगः

img

अवलोकन

यह रणनीति बाजार के रुझानों को निर्धारित करने और तदनुसार लंबी / छोटी स्थिति बनाने के लिए प्राइम नंबर ऑसिलेटर संकेतक का उपयोग करती है। पीएनओ मूल्य और मूल्य के निकटतम प्राइम नंबर के बीच अंतर की गणना करता है, जिसमें सकारात्मक मान तेजी के रुझानों को इंगित करते हैं और नकारात्मक मूल्य मंदी के रुझानों को इंगित करते हैं। रणनीति मूल्य दोलन के दौरान छिपी हुई प्रवृत्ति जानकारी को पकड़ सकती है और ब्रेकआउट ट्रेडिंग के लिए मार्गदर्शन प्रदान कर सकती है।

रणनीति तर्क

रणनीति सबसे पहले एक PrimeNumberOscillator फ़ंक्शन को परिभाषित करती है जो मूल्य और allowedPercent को पैरामीटर के रूप में लेता है। फ़ंक्शन allowedPercent रेंज के भीतर मूल्य के निकटतम प्राइम नंबर की खोज करता है और उनके अंतर को लौटाता है। एक सकारात्मक अंतर तेजी का संकेत देता है और एक नकारात्मक अंतर मंदी का संकेत देता है।

रणनीति में, PrimeNumberOscillator फ़ंक्शन को xPNO मान की गणना करने के लिए बुलाया जाता है। स्थिति की दिशा xPNO के संकेत से निर्धारित की जाती है और अंतिम व्यापार दिशा प्राप्त करने के लिए रिवर्स फैक्टर से गुणा किया जाता है। दिशा के आधार पर लंबी / छोटी स्थिति खोली जाती है।

रणनीति मुख्य रूप से प्रवृत्ति दिशा के लिए पीएनओ संकेतक पर निर्भर करती है। संकेतक स्वयं काफी कच्चा है और संकेत सत्यापन के लिए अन्य कारकों के साथ संयुक्त होने की आवश्यकता है। लेकिन यह गणितीय सिद्धांतों पर आधारित है और कुछ उद्देश्य मार्गदर्शन प्रदान कर सकता है।

लाभ विश्लेषण

  • गणितीय सिद्धांतों पर आधारित, अपेक्षाकृत उद्देश्यपूर्ण
  • दोलन में छिपे रुझानों की पहचान कर सकता है
  • संवेदनशीलता समायोजन के लिए लचीला पैरामीटर समायोजन
  • लागू करने के लिए सरल, समझने और अनुकूलित करने के लिए आसान

जोखिम विश्लेषण

  • पीएनओ स्वयं कच्चा है, कई झूठे संकेतों के लिए प्रवण है
  • अन्य तकनीकी संकेतकों से सत्यापन की आवश्यकता है, अकेले इस्तेमाल नहीं किया जा सकता है
  • सावधानीपूर्वक पैरामीटर चयन की आवश्यकता है, बहुत बड़ा या छोटा विफल हो जाएगा
  • उच्च व्यापारिक आवृत्ति, स्थिति आकार की आवश्यकताओं का नियंत्रण

अनुकूलन दिशाएँ

  • संकेत सत्यापन के लिए चलती औसत, आरएसआई जैसे फ़िल्टर जोड़ें
  • डाउनसाइड जोखिम को सीमित करने के लिए स्टॉप लॉस लागू करें
  • बाजार की स्थितियों के आधार पर गतिशील रूप से समायोजित करने की अनुमति
  • अस्थिरता और अन्य मीट्रिक के माध्यम से स्थिति आकार को अनुकूलित करें

निष्कर्ष

रणनीति सरल तर्क और कार्यान्वयन के साथ, अभाज्य संख्या दोलन सिद्धांतों के आधार पर प्रवृत्ति की दिशा निर्धारित करती है। लेकिन पीएनओ की सीमाएं हैं जिनके लिए सावधानीपूर्वक उपयोग की आवश्यकता होती है। संकेतों को सत्यापित करने और जोखिम को नियंत्रित करने के लिए अन्य तकनीकी संकेतकों का संयोजन आवश्यक है। गणितीय व्यापार रणनीतियों के एक विशिष्ट प्रतिनिधि के रूप में, अध्ययन और अनुसंधान के लिए संदर्भ मूल्य है।


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

अधिक