फ़ायटर्रो अनुमानक पर आधारित व्यापारिक रणनीति

लेखक:चाओझांग, दिनांक: 2023-09-22 14:12:27
टैगः

अवलोकन

यह रणनीति फैटर्रो अनुमानक द्वारा उत्पन्न ट्रेडिंग संकेतों के आधार पर व्यापार करती है। फैटर्रो अनुमानक एक संकेतक है जो कीमतों की अभिसरण और विचलन दर की गणना करके रुझानों का न्याय करता है। यह रणनीति आदर्श बिंदुओं पर विभिन्न आकारों के लंबे और छोटे संकेत उत्पन्न करने के लिए फैटर्रो अनुमानक के ट्रेडिंग संकेतों और कुछ अतिरिक्त शर्तों को जोड़ती है।

रणनीति तर्क

इस रणनीति का मूल फाइट्रेरो अनुमानक है। इसकी गणना हैः सबसे पहले कीमतों की अभिसरण और विचलन दर (सीआर) की गणना करें, फिर एक चतुर्भुज फलन का निर्माण करें, जो विभिन्न गुणांक सेट करके सीआर वक्र के आकार को प्रतिबिंबित कर सकता है। चतुर्भुज वक्र के मोड़ बिंदुओं का निरीक्षण करके, यह मूल्य रुझानों के परिवर्तन का न्याय करता है।

विशेष रूप से, रणनीति पहले कीमतों के सीआर की गणना करती है। फिर यह लंबाई 2*len की एक सरणी dizi का निर्माण करती है, और इसे चौकोर फ़ंक्शन के मूल्यों के साथ क्रमशः भरती है। चौकोर फ़ंक्शन के गुणांक सीआर के मूल्य को दर्शाते हैं। उसके बाद, इंडेक्स len+1+5 और len+1+4 पर दो मूल्यों का अवलोकन करके, यह निर्धारित करती है कि क्या चौकोर फ़ंक्शन में एक झुकाव बिंदु है। यदि कोई झुकाव बिंदु है, तो यह खरीद या बिक्री संकेत उत्पन्न करता है।

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

लाभ विश्लेषण

इस रणनीति के निम्नलिखित फायदे हैंः

  1. प्रवृत्तियों का आकलन करने के लिए फैटर्रो अनुमानक का उपयोग करना, जो मूल्य उतार-चढ़ाव के प्रति संवेदनशील है और प्रवृत्ति परिवर्तनों को जल्दी पकड़ सकता है।

  2. सीआर वक्र के आकार को प्रतिबिंबित करने के लिए एक चतुर्भुज फलन का निर्माण और सीधे और प्रभावी रूप से मोड़ बिंदुओं का पता लगाना।

  3. विभिन्न आकारों के संकेत उत्पन्न करने से आदर्श बिंदुओं पर पिरामिड-ट्रेडिंग की अनुमति मिलती है, जिससे लाभ की संभावना बढ़ जाती है।

  4. न्यूनतम दूरी की सेटिंग को बढ़ाना प्रभावी रूप से संकेतों को फ़िल्टर करता है और अप्रभावी बार-बार व्यापार से बचता है।

  5. कई समायोज्य मापदंडों को विभिन्न व्यापार उत्पादों के लिए अनुकूलित किया जा सकता है, अनुकूलन क्षमता में सुधार।

  6. रणनीति तर्क स्पष्ट और समझने में आसान है, और कोड अत्यधिक पठनीय है, जिससे इसे सीखना आसान हो जाता है।

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

इस रणनीति के लिए कुछ जोखिम भी ध्यान देने योग्य हैंः

  1. फेयटर्रो एस्टीमेटर्स में वक्र फिट होने का जोखिम है और कुछ ट्रेडिंग उत्पादों में कम प्रदर्शन हो सकता है।

  2. केवल चौकोर वक्र के मोड़ बिंदुओं के आधार पर न्याय करना बहुत कच्चा हो सकता है, जिससे गलत निर्णय हो सकते हैं।

  3. लगातार पिरामिड ट्रेडिंग करने से कमीशन की लागत बढ़ जाती है।

  4. समायोज्य मापदंडों की बड़ी संख्या अनुकूलन की कठिनाई को बढ़ाती है।

  5. यह मूल्य उतार-चढ़ाव की अवधि में गलत आकलन से प्रभावी ढंग से निपट नहीं सकता है।

  6. स्टॉप लॉस तंत्र की कमी से अधिक नुकसान हो सकते हैं।

संबंधित समाधान हैंः

  1. मजबूतता में सुधार के लिए विभिन्न उत्पादों के लिए मापदंडों का अनुकूलन करना।

  2. फ़िल्ट्रेशन के लिए अन्य संकेतक जोड़ें ताकि केवल मोड़ बिंदुओं पर आधारित गलत आकलन से बचा जा सके।

  3. एकल हानि को नियंत्रित करने के लिए उचित स्टॉप हानि सेट करें.

  4. मापदंडों को स्वतः अनुकूलित करने के लिए बड़े डेटा विधियों का उपयोग करें।

  5. दोलन अवधि में व्यापार करने से बचने के लिए दोलन पहचान जोड़ें।

  6. उचित स्टॉप लॉस लॉजिक सेट करें।

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

अनुकूलन दिशाओं में निम्नलिखित शामिल हैंः

  1. एकल हानि को नियंत्रित करने के लिए स्टॉप लॉस लॉजिक जोड़ें, जैसे कि ट्रेलिंग स्टॉप लॉस या टाइम स्टॉप लॉस।

  2. अन्य संकेतक जोड़ें ताकि केवल Faytterro Estimator पर भरोसा करने वाले गलत आकलन से बचा जा सके। उदाहरण के लिए, MACD, KDJ आदि के साथ संयोजन।

  3. अल्पकालिक वापसी से रोके जाने से बचने के लिए पुष्टिकरण तंत्र जोड़ें। पुनः प्रवेश पुष्टिकरण पर विचार करें।

  4. आनुवंशिक एल्गोरिदम, बेजियन अनुकूलन आदि का उपयोग करके विभिन्न उत्पादों के लिए समायोज्य मापदंडों का अनुकूलन करें।

  5. एटीआर, डीएमआई आदि का उपयोग करके दोलन बाजारों की पहचान करें और दोलन के दौरान व्यापार से बचें।

  6. उदाहरण के लिए, गतिशील रूप से प्रवृत्ति की ताकत के आधार पर पिरामिडिंग पदों को समायोजित करें।

  7. इष्टतम समय सीमा खोजने के लिए विभिन्न समय सीमाओं पर मापदंडों का परीक्षण करें।

निष्कर्ष

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


/*backtest
start: 2022-09-21 00:00:00
end: 2023-08-10 00:00:00
period: 1d
basePeriod: 1h
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/

// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © faytterro

//@version=5
// strategy("Faytterro Estimator Strategy", overlay=true, pyramiding=100)

src=input(hlc3,title="source")
len=input.int(10,title="faytterro estimator lenght", maxval=500)
len2=100
len3=input.float(500,title="minumum enrty-close gap (different direction)")
len4=input.float(500,title="minumum entry-entry gap (same direction)")
cr(x, y) =>
    z = 0.0
    weight = 0.0
    for i = 0 to y-1
        z:=z + x[i]*((y-1)/2+1-math.abs(i-(y-1)/2))
    z/(((y+1)/2)*(y+1)/2)
cr= cr(src,2*len-1) 
width=input.int(10, title="strong entry size", minval=1)

dizi = array.new_float(500)
// var line=array.new_line()
//if barstate.islast
for i=0 to len*2
    array.set(dizi,i,(i*(i-1)*(cr-2*cr[1]+cr[2])/2+i*(cr[1]-cr[2])+cr[2]))

buy = array.get(dizi,len+1+5)>array.get(dizi,len+1+4) and array.get(dizi,len+1+5)<cr[len] 
sell = array.get(dizi,len+1+5)<array.get(dizi,len+1+4) and array.get(dizi,len+1+5)>cr[len]
bb=buy? hlc3 : na
ss=sell? hlc3 : na 
sbuy= buy and close<(close[ta.barssince(buy or sell)])[1]-len4 and close<ta.highest(fixnan(ss),len2)-len3*3
ssell= sell and close>(close[ta.barssince(buy or sell)])[1]+len4 and close>ta.lowest(fixnan(bb),len2)+len3*3

buy:= buy and close<(close[ta.barssince(buy or sell)])[1]-len4 and close<ta.highest(fixnan(ss),len2)-len3 //and close>ta.highest(fixnan(ss),len2)-len3*3
sell:=  sell and close>(close[ta.barssince(buy or sell)])[1]+len4 and close>ta.lowest(fixnan(bb),len2)+len3 //and close<ta.lowest(fixnan(bb),len2)+len3*3
alertcondition(buy or sell)


if (sbuy)
    strategy.entry("strong buy", strategy.long,width)
if (ssell)
    strategy.entry("strong sell", strategy.short,width)
if (buy)
    strategy.entry("buy", strategy.long)
if (sell)
    strategy.entry("sell", strategy.short)

अधिक