
यह रणनीति एक द्वि-स्टॉप, द्वि-स्टॉप और मोबाइल स्टॉप पर आधारित एक बिटकॉइन क्वांटिटेटिव ट्रेडिंग रणनीति है। यह रणनीति ईएमए और डब्ल्यूएमए के क्रॉसिंग को एक प्रवेश संकेत के रूप में लेती है, जो एक द्वि-स्टॉप द्वि-स्टॉप जोखिम प्रबंधन दृष्टिकोण को अपनाती है, और पहले स्टॉप के बाद, एक मोबाइल स्टॉप के साथ आंशिक लाभ का आश्वासन देती है, और आगे बढ़ना जारी रखती है।
जब ईएमए नीचे से डब्ल्यूएमए पहनता है, तो अधिक प्रवेश करें; जब ईएमए ऊपर से नीचे से डब्ल्यूएमए पहनता है, तो खाली प्रवेश करें।
स्टॉप की ओर, दो स्टॉप पॉइंट्स सेट करें, पहला स्टॉप पॉइंट प्रवेश बिंदु से 20 अंक ऊपर और दूसरा स्टॉप पॉइंट 40 अंक ऊपर सेट करें।
स्टॉप लॉस के मामले में, दो स्टॉप लॉस भी सेट किए गए हैं, पहला स्टॉप लॉस प्रवेश बिंदु के नीचे 20 अंक के रूप में सेट किया गया है, दूसरा स्टॉप लॉस प्रवेश बिंदु के रूप में सेट किया गया है।
जब कीमत पहले स्टॉप पॉइंट को छूती है, तो 50% स्थिति को समतल करें और स्टॉप लॉस को प्रवेश बिंदु पर स्थानांतरित करें और दूसरे स्टॉप पॉइंट के लिए अधिक लाभ के लिए आगे बढ़ें।
इस प्रकार, इस रणनीति के तीन परिणाम हो सकते हैंः
इस रणनीति का सबसे बड़ा लाभ जोखिम प्रबंधन प्रणाली में निहित है। डबल स्टॉप और डबल स्टॉप लॉस सेट करके, आप लाभ के एक हिस्से को प्राप्त करने के बाद, लाभ को लॉक करने के लिए चलती रोक को लागू कर सकते हैं, और अधिक मुनाफे की तलाश जारी रख सकते हैं। यह काफी लाभप्रदता में सुधार कर सकता है।
एक और लाभ यह है कि यह रणनीति एक व्यापार के परिणाम को तीन स्थितियों में विभाजित करती है, जिससे एक बार के नुकसान की संभावना कम हो जाती है, जिससे समग्र लाभ अधिक संतुलित हो जाता है। सामान्य रणनीति में केवल दो परिणाम होते हैं, या तो 2% खोना या 2% से अधिक लाभ प्राप्त करना। जबकि इस रणनीति में तीन परिणाम होते हैं, क्रमशः 2% खोना, 1% प्राप्त करना और 3% प्राप्त करना। यह भी पूंछ जोखिम को बेहतर ढंग से नियंत्रित करता है।
इस रणनीति के लिए जोखिम मुख्य रूप से स्टॉप लॉस की सेटिंग से आता है। स्टॉप लॉस की दूरी बहुत ढीली है, जिससे एक बार में बहुत अधिक नुकसान हो सकता है; और स्टॉप लॉस की दूरी बहुत संकीर्ण है, जिससे बाजार के शोर से मारा जा सकता है। विभिन्न किस्मों की विशेषताओं और उतार-चढ़ाव के आधार पर उचित स्टॉप लॉस की आवश्यकता होती है।
एक अन्य जोखिम यह है कि पहले स्टॉप के बाद भी स्थिति में रहने वाले हिस्से को नुकसान का जोखिम है। यदि नुकसान पहले स्टॉप के लाभ से अधिक है, तो लाभ के कुछ या सभी को ऑफसेट कर दिया जाएगा। इसे लाभ को लॉक करने के लिए चलती रोक को सख्ती से लागू करने की आवश्यकता है।
इस रणनीति को निम्नलिखित पहलुओं से अनुकूलित किया जा सकता हैः
पैरामीटर के विभिन्न संयोजनों का परीक्षण करें, सबसे इष्टतम पैरामीटर सेटिंग्स की तलाश करें। उदाहरण के लिए, 15 बिंदुओं का परीक्षण किया जा सकता है, 25 बिंदुओं की स्टॉप-स्टॉप-लॉस दूरी।
अन्य सूचक संयोजनों जैसे कि KDJ, MACD आदि के सूचक संकेतों का प्रयास करें।
पहले स्टॉप पॉइंट के लिए पोजीशन अनुपात का अनुकूलन करें, 50% उपयुक्त या 30% या 70% बेहतर।
मोबाइल स्टॉप लॉस की ट्रैकिंग गति सेटिंग्स का परीक्षण करें ताकि यह सुनिश्चित किया जा सके कि लाभप्रदता की गारंटी के साथ नुकसान की जगह को कम से कम किया जा सके।
इस रणनीति के लिए समग्र रूप से बहुत स्थिर है, दोहरी स्टॉप दोहरी रोक और चलती रोक के माध्यम से, लाभ के स्तर में काफी वृद्धि, कम पूंछ जोखिम. अनुकूलन के लिए जगह भी काफी बड़ा है, और बेहतर प्रभाव पैरामीटर समायोजन और सूचक संयोजन के माध्यम से प्राप्त किया जा सकता है. कुल मिलाकर, इस रणनीति उन निवेशकों के लिए उपयुक्त है जो उच्च स्थिर रिटर्न की तलाश में हैं.
/*backtest
start: 2024-01-11 00:00:00
end: 2024-01-18 00:00:00
period: 45m
basePeriod: 5m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
//@version=4
strategy("SL1 Pips after TP1 (MA)", commission_type=strategy.commission.cash_per_order, overlay=true)
// Strategy
Buy = input(true)
Sell = input(true)
// Date Range
start_year = input(title='Start year' ,defval=2020)
start_month = input(title='Start month' ,defval=1)
start_day = input(title='Start day' ,defval=1)
start_hour = input(title='Start hour' ,defval=0)
start_minute = input(title='Start minute' ,defval=0)
end_time = input(title='set end time?',defval=false)
end_year = input(title='end year' ,defval=2019)
end_month = input(title='end month' ,defval=12)
end_day = input(title='end day' ,defval=31)
end_hour = input(title='end hour' ,defval=23)
end_minute = input(title='end minute' ,defval=59)
// MA
ema_period = input(title='EMA period',defval=10)
wma_period = input(title='WMA period',defval=20)
ema = ema(close,ema_period)
wma = wma(close,wma_period)
// Entry Condition
buy =
crossover(ema,wma) and
nz(strategy.position_size) == 0 and Buy
sell =
crossunder(ema,wma) and
nz(strategy.position_size) == 0 and Sell
// Pips
pip = input(20)*10*syminfo.mintick
// Trading parameters //
var bool LS = na
var bool SS = na
var float EP = na
var float TVL = na
var float TVS = na
var float TSL = na
var float TSS = na
var float TP1 = na
var float TP2 = na
var float SL1 = na
var float SL2 = na
if buy or sell and strategy.position_size == 0
EP := close
SL1 := EP - pip * (sell?-1:1)
SL2 := EP - pip * (sell?-1:1)
TP1 := EP + pip * (sell?-1:1)
TP2 := EP + pip * 2 * (sell?-1:1)
// current trade direction
LS := buy or strategy.position_size > 0
SS := sell or strategy.position_size < 0
// adjust trade parameters and trailing stop calculations
TVL := max(TP1,open) - pip[1]
TVS := min(TP1,open) + pip[1]
TSL := open[1] > TSL[1] ? max(TVL,TSL[1]):TVL
TSS := open[1] < TSS[1] ? min(TVS,TSS[1]):TVS
if LS and high > TP1
if open <= TP1
SL2:=min(EP,TSL)
if SS and low < TP1
if open >= TP1
SL2:=max(EP,TSS)
// Closing conditions
close_long = LS and open < SL2
close_short = SS and open > SL2
// Buy
strategy.entry("buy" , strategy.long, when=buy and not SS)
strategy.exit ("exit1", from_entry="buy", stop=SL1, limit=TP1, qty_percent=1)
strategy.exit ("exit2", from_entry="buy", stop=SL2, limit=TP2)
// Sell
strategy.entry("sell" , strategy.short, when=sell and not LS)
strategy.exit ("exit3", from_entry="sell", stop=SL1, limit=TP1, qty_percent=1)
strategy.exit ("exit4", from_entry="sell", stop=SL2, limit=TP2)
// Plots
a=plot(strategy.position_size > 0 ? SL1 : na, color=#dc143c, style=plot.style_linebr)
b=plot(strategy.position_size < 0 ? SL1 : na, color=#dc143c, style=plot.style_linebr)
c=plot(strategy.position_size > 0 ? TP1 : na, color=#00ced1, style=plot.style_linebr)
d=plot(strategy.position_size < 0 ? TP1 : na, color=#00ced1, style=plot.style_linebr)
e=plot(strategy.position_size > 0 ? TP2 : na, color=#00ced1, style=plot.style_linebr)
f=plot(strategy.position_size < 0 ? TP2 : na, color=#00ced1, style=plot.style_linebr)
g=plot(strategy.position_size >= 0 ? na : EP, color=#ffffff, style=plot.style_linebr)
h=plot(strategy.position_size <= 0 ? na : EP, color=#ffffff, style=plot.style_linebr)
plot(ema,title="ema",color=#fff176)
plot(wma,title="wma",color=#00ced1)