यह रणनीति Faytterro Estimator के ट्रेडिंग सिग्नल के आधार पर ट्रेडिंग करने की रणनीति है। Faytterro Estimator एक संकेतक है जो कीमतों की समांतरता की गणना करके रुझान का न्याय करता है। यह रणनीति Faytterro Estimator के ट्रेडिंग सिग्नल के साथ-साथ कुछ अतिरिक्त शर्तों को जोड़ती है जो विभिन्न आकारों में खरीद और बेचने के संकेतों को आदर्श बिंदु पर भेजती है।
इस रणनीति के केंद्र में Faytterro Estimator है। इसकी गणना की विधि यह हैः पहले कीमतों के समास विखंडन दर सीआर की गणना करें, और फिर एक माध्यमिक फ़ंक्शन का निर्माण करें, जो अलग-अलग गुणांक सेट करके सीआर की वक्र विशेषता को प्रतिबिंबित करने में सक्षम है। मूल्य प्रवृत्ति में परिवर्तन को निर्धारित करने के लिए माध्यमिक फ़ंक्शन वक्र के वक्रों को देखकर।
विशेष रूप से, रणनीति पहले कीमतों के समापन विखंडन दर (CR) की गणना करती है।*len का सरणी dizi, क्रमशः द्वितीयक फ़ंक्शन मानों को भरें। जिनमें से द्वितीयक फ़ंक्शन गुणांक CR के मानों को दर्शाता है। इसके बाद, दो मानों को देखते हुए, जिसे len + 1 + 5 और len + 1 + 4 के रूप में चिह्नित किया गया है, यह निर्धारित करने के लिए कि क्या द्वितीयक फ़ंक्शन में एक वक्र बिंदु है, यदि वक्र बिंदु होता है, तो यह एक खरीद या बिक्री संकेत देता है।
इस आधार पर, रणनीति ने कुछ अतिरिक्त शर्तें भी निर्धारित की हैं, जैसे कि मूल्य के टूटने का न्यूनतम अंतराल निर्धारित करना, अक्सर व्यापार से बचने के लिए; विभिन्न आकारों के प्रवेश संकेतों की स्थापना आदि। ये शर्तें कुछ अवांछनीय व्यापार बिंदुओं को फ़िल्टर करने के लिए हैं।
इस रणनीति के कुछ फायदे हैं:
Faytterro Estimator का उपयोग करके प्रवृत्ति का आकलन करें, जो मूल्य में उतार-चढ़ाव के लिए संवेदनशील है और प्रवृत्ति में बदलाव को जल्दी पकड़ सकता है।
एक माध्यमिक फ़ंक्शन का निर्माण करें जो सीआर वक्र के लक्षणों को दर्शाता है, टर्नकी सिग्नल की तलाश करें, और यह निर्धारित करें कि विधि सहज है या नहीं।
विभिन्न आकारों के प्रवेश संकेतों के साथ, पिरामिड ट्रेडों को इष्टतम बिंदुओं पर किया जा सकता है, जिससे लाभ की संभावना बढ़ जाती है।
न्यूनतम अंतराल सेटिंग्स को जोड़ना, सिग्नल को प्रभावी रूप से फ़िल्टर करना और बार-बार अमान्य लेनदेन से बचना।
कई समायोज्य मापदंडों, विभिन्न किस्मों के लिए अनुकूलित किया जा सकता है, अनुकूलनशीलता
रणनीति स्पष्ट और समझने योग्य है, कोड को आसानी से पढ़ा जा सकता है, और सीखना आसान है।
इस रणनीति के कुछ जोखिम भी हैं, जिनके बारे में ध्यान देने की आवश्यकता हैः
Faytterro Estimator में वक्र-फिटिंग के लिए जोखिम है और कुछ किस्मों में खराब प्रभाव पड़ सकता है।
सिग्नल को केवल द्वितीयक फ़ंक्शन वक्र के आधार पर निर्धारित करने के लिए, यह बहुत व्यापक हो सकता है, जिससे गलत निर्णय हो सकता है।
बार-बार पिरामिड ट्रेडिंग से शुल्क बढ़ जाता है।
बड़ी संख्या में समायोज्य पैरामीटर समायोजन की कठिनाई को बढ़ाते हैं।
इस तरह की गलतफहमी के कारण, कीमतों में उतार-चढ़ाव के समय को प्रभावी ढंग से प्रबंधित नहीं किया जा सकता है।
कोई स्टॉप लॉस सिस्टम नहीं है, जिससे नुकसान बढ़ सकता है।
जोखिम के लिए समाधान इस प्रकार हैं:
विभिन्न किस्मों के लिए अनुकूलित पैरामीटर, मजबूत बनाने के लिए।
अन्य मापदंडों को फ़िल्टर करें, ताकि केवल वक्र के आधार पर गलतफहमी न हो।
स्टॉप लॉस को उचित रूप से सेट करें और एकल नुकसान को नियंत्रित करें।
बिग डेटा के माध्यम से पैरामीटर को स्वचालित रूप से समायोजित करें
भूकंप के चरणों से बचने के लिए भूकंप पहचान तंत्र को बढ़ाया गया।
उचित स्टॉप लॉजिक सेट करें
इस रणनीति के अनुकूलन में शामिल हैंः
एकल हानि को नियंत्रित करने के लिए स्टॉप लॉजिक जोड़ें। आप या तो गति स्टॉप या समय स्टॉप सेट कर सकते हैं।
अन्य सूचकांक के संयोजन को जोड़ना, Faytterro Estimator के एकल सूचकांक को गलत आंकने के जोखिम से बचने के लिए। उदाहरण के लिए MACD, KDJ आदि सूचकांक के संयोजन में फ़िल्टरिंग।
पुष्टि करने के लिए एक अतिरिक्त तंत्र, ताकि कीमतों में अल्पकालिक वापसी के कारण स्टॉप लॉस से बाहर निकलने से बचा जा सके। दूसरी प्रवेश पुष्टि पर विचार किया जा सकता है।
Adjustable parameters को अनुकूलित करें, विभिन्न किस्मों के लिए उचित पैरामीटर सेट करें। आनुवंशिक एल्गोरिदम, बेयज़ अनुकूलन और अन्य तरीकों का उपयोग किया जा सकता है।
अस्थिरता की स्थिति की पहचान बढ़ाएं, अस्थिरता के दौरान व्यापार से बचें। इसे एटीआर, डीएमआई जैसे संकेतकों से पहचाना जा सकता है।
पिरामिड लॉजिक को अनुकूलित करें, ताकि पीछा करने वाले लोगों को पीछा करने से रोका जा सके। उदाहरण के लिए, प्रवृत्ति की ताकत के आधार पर गतिशील रूप से बढ़ोतरी की दर को समायोजित करें।
विभिन्न समय चक्रों के लिए पैरामीटर सेटिंग्स का परीक्षण करें और इष्टतम चक्र खोजें।
इस रणनीति के आधार पर फैटररो Estimator के व्यापारिक संकेतों पर निर्णय लेने के लिए, इसके आधार पर तर्क निर्णय जोड़ें, और विभिन्न आकार के प्रवेश संकेतों को सेट करें, जिससे पिरामिड विशेषता वाली प्रवृत्ति ट्रैकिंग रणनीति हो। यह रणनीति सहज है और इसमें मजबूत प्रवृत्ति पकड़ने की क्षमता है। लेकिन इसमें संकेतक गलतफहमी, अनिश्चितता, पैरामीटर अनुकूलन की कठिनाई आदि की समस्याएं भी हैं। भविष्य के अनुकूलन दिशा में रणनीति की स्थिरता और अनुकूलन में सुधार करने के लिए फ़िल्टरिंग तंत्र, स्टॉप लॉजिक, पैरामीटर अनुकूलन आदि शामिल हैं। कुल मिलाकर, यह रणनीति एक विचार प्रदान करती है, सीखने और सीखने के लिए मूल्यवान है, जो संकेतक से प्रवृत्ति में बदलाव का उपयोग करती है।
/*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)