
इस रणनीति को ओबीवी पिरामिड ट्रेडिंग कहा जाता है, जो ओबीवी सूचकांकों के आधार पर पोजीशन खोलने की रणनीति को डिजाइन करता है, और पिरामिड स्टॉक को लागू करता है, जो प्रवृत्ति के बाद कई बार स्टॉक को बढ़ाता है और प्रवृत्ति को ट्रैक करता है।
यह रणनीति प्रवृत्ति की दिशा निर्धारित करने के लिए OBV संकेतक का उपयोग करती है। OBV संकेतक मूल्य प्रवृत्ति को व्यापार मात्रा में परिवर्तन के आधार पर निर्धारित करता है, व्यापार मात्रा में परिवर्तन बाजार के प्रतिभागियों के दृष्टिकोण को दर्शाता है। जब OBV पर 0 अक्ष पार करने का मतलब है कि खरीद संकेतक बढ़ गए हैं, तो एक बहुमुखी प्रवृत्ति बनती है; जब OBV के नीचे 0 अक्ष पार करने का मतलब है कि बिक्री संकेतक बढ़ गए हैं, तो एक खाली प्रवृत्ति बनती है।
यह रणनीति यह निर्धारित करने के लिए कि क्या OBV 0 अक्ष को पार कर रहा है, एक बहुमुखी प्रवृत्ति के गठन की पुष्टि करने के लिए। जब एक बहुमुखी प्रवृत्ति बनती है, तो एक पिरामिड वृद्धि नियम सेट किया जाता है, अधिकतम 7 बार बढ़ाया जा सकता है। प्रवृत्ति को ट्रैक करके लाभ कमाने के लिए, एक स्टॉप-लॉस-एक्जिट तंत्र सेट करें।
इस रणनीति का सबसे बड़ा लाभ यह है कि यह प्रवृत्ति को पकड़ने में सक्षम है, पिरामिड के माध्यम से प्रवृत्ति को ट्रैक करने के लिए प्रवृत्ति को ट्रैक करने के लिए, लाभ की संभावना है। इसके अलावा, रणनीति के जोखिम को नियंत्रित किया जाता है, जिसमें स्टॉप-लॉस सेटिंग है।
विशेष रूप से, लाभ मुख्य रूप से इस प्रकार दिखता हैः
इस रणनीति के दो प्रमुख जोखिम हैंः
समाधान के लिएः
इस रणनीति में निम्नलिखित प्रमुख अनुकूलन हैं:
इन सामग्रियों को अनुकूलित करने के बाद, हम रणनीतियों को अधिक स्थिर, अधिक नियंत्रित और अधिक स्केलेबल बना सकते हैं।
यह रणनीति समग्र रूप से बहुत व्यावहारिक है। यह प्रवृत्ति की दिशा का आकलन करने के लिए ओबीवी संकेतकों का उपयोग करता है, फिर पिरामिड के माध्यम से ट्रेंड ट्रैकिंग ट्रेंड चलाता है। रणनीति तर्क स्पष्ट और स्पष्ट है, समझने और पुनः मापने में आसान है। इसका कुछ वास्तविक युद्ध संचालन मूल्य है। पैरामीटर, स्टॉपबॉक्स स्टॉपलॉस, स्टॉपबॉक्स आदि के गहन अनुकूलन के माध्यम से, रणनीति प्रभाव को और बढ़ाया जा सकता है और आगे की जांच के लायक है।
/*backtest
start: 2023-11-07 00:00:00
end: 2023-12-07 00:00:00
period: 1h
basePeriod: 15m
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/
// © RafaelZioni
//@version=4
strategy(title = " OBV Pyr", overlay = true, pyramiding=5,initial_capital = 10000, default_qty_type= strategy.percent_of_equity, default_qty_value = 20, calc_on_order_fills=false, slippage=0,commission_type=strategy.commission.percent,commission_value=0.075)
strat_dir_input = input(title="Strategy Direction", defval="long", options=["long", "short", "all"])
strat_dir_value = strat_dir_input == "long" ? strategy.direction.long : strat_dir_input == "short" ? strategy.direction.short : strategy.direction.all
strategy.risk.allow_entry_in(strat_dir_value)
//
fastLength = input(250, title="Fast filter length ", minval=1)
slowLength = input(500,title="Slow filter length", minval=1)
source=close
v1=ema(source,fastLength)
v2=ema(source,slowLength)
//
filter=true
src = close
LengthOBV = input(20)
nv = change(src) > 0 ? volume : change(src) < 0 ? -volume : 0*volume
c = cum(nv)
c_tb = c - sma(c,LengthOBV)
// Conditions
longCond = crossover(c_tb,0)
//shortCond =crossunder(cnv_tb,0)
//
longsignal = (v1 > v2 or filter == false ) and longCond
//shortsignal = (v1 < v2 or filter == false ) and shortCond
//set take profit
ProfitTarget_Percent = input(3)
Profit_Ticks = close * (ProfitTarget_Percent / 100) / syminfo.mintick
//set take profit
LossTarget_Percent = input(10)
Loss_Ticks = close * (LossTarget_Percent / 100) / syminfo.mintick
////Order Placing
//
strategy.entry("Entry 1", strategy.long, when=strategy.opentrades == 0 and longsignal)
//
strategy.entry("Entry 2", strategy.long, when=strategy.opentrades == 1 and longsignal)
//
strategy.entry("Entry 3", strategy.long, when=strategy.opentrades == 2 and longsignal)
//
strategy.entry("Entry 4", strategy.long, when=strategy.opentrades == 3 and longsignal)
//
strategy.entry("Entry 5", strategy.long, when=strategy.opentrades == 4 and longsignal)
//
strategy.entry("Entry 6", strategy.long, when=strategy.opentrades == 5 and longsignal)
//
strategy.entry("Entry 7", strategy.long, when=strategy.opentrades == 6 and longsignal)
//
//
//
if strategy.position_size > 0
strategy.exit(id="Exit 1", from_entry="Entry 1", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 2", from_entry="Entry 2", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 3", from_entry="Entry 3", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 4", from_entry="Entry 4", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 5", from_entry="Entry 5", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 6", from_entry="Entry 6", profit=Profit_Ticks, loss=Loss_Ticks)
strategy.exit(id="Exit 7", from_entry="Entry 7", profit=Profit_Ticks, loss=Loss_Ticks)