
यह रणनीति बाजार की दिशा और ताकत का आकलन करने के लिए मुख्य रूप से K लाइन के उच्च और निम्न बिंदुओं के रूप में बने बॉक्स के टूटने की निगरानी करती है। जब एक ऊपर की ओर का बॉक्स टूटता है, तो रणनीति टूटने के पास एक सकारात्मक प्रवेश बिंदु स्थापित करती है; जब एक नीचे की ओर का बॉक्स टूटता है, तो रणनीति टूटने के पास एक उलटा प्रवेश बिंदु स्थापित करती है। एक बार जब व्यापारिक संकेत बन जाता है, तो रणनीति एकल स्थिति बनाती है और जोखिम को नियंत्रित करने के लिए स्टॉप और स्टॉप पॉइंट स्थापित करती है।
रणनीति एक व्यापारिक समय अवधि को परिभाषित करती है और केवल उस समय अवधि के भीतर व्यापारिक अवसरों की तलाश में काम करती है।
रणनीति यह निर्धारित करती है कि प्रत्येक K लाइन के गठन के बाद, क्या पहले दो K लाइनों के उच्चतम और निम्नतम मूल्य में कोई महत्वपूर्ण ब्रेक है।
2.1 यदि दूसरी K लाइन का न्यूनतम मूल्य पहली K लाइन के उच्चतम मूल्य से अधिक है, तो ऊपर की ओर एक बॉक्स ब्रेक होता है।
2.2 यदि दूसरी K लाइन की उच्चतम कीमत पहली K लाइन की निम्नतम कीमत से कम है, तो नीचे की ओर बॉक्स ब्रेक होता है।
एक बार जब बॉक्स को तोड़ने के संकेत की पुष्टि हो जाती है, तो रणनीति एक प्रवेश बिंदु स्थापित करती है जो कि रूट K लाइन के उच्चतम या निम्नतम मूल्य के पास स्थित है।
एक बार स्थिति बन जाने के बाद, रणनीति एक ब्रेकआउट की दोहरी आयाम के आधार पर स्टॉपबॉक्स सेट करती है, इस तरह से प्रवृत्ति की गति को पकड़ने के लिए।
यह रणनीति दूसरे K लाइन पर न्यूनतम या उच्चतम मूल्य पर एक स्टॉपलॉस सेट करती है, जिससे नुकसान का जोखिम कम हो जाता है।
इस रणनीति के निम्नलिखित फायदे हैं:
सिद्धांतों को समझना और लागू करना आसान है।
बाजार की दिशा और ताकत का आकलन करने के लिए के-लाइन बॉक्स बॉडी ब्रेकडाउन का उपयोग करें, उच्च सटीकता।
रुकावट के स्तर की स्थापना के माध्यम से रुकावट गुणांक को समायोजित किया जा सकता है।
एक स्पष्ट स्टॉप लॉजिक के साथ, आप व्यक्तिगत नुकसान को नियंत्रित कर सकते हैं।
रणनीतिक विचार लचीला है और व्यक्तिगत शैली के अनुसार अनुकूलित किया जा सकता है।
हालांकि, इस रणनीति में कुछ जोखिम भी हैं:
एक ब्रेकआउट सिग्नल एक झूठी ब्रेकआउट हो सकता है, जो पूरी तरह से नुकसान से बचने में सक्षम नहीं है।
स्टॉप लॉस पोजीशन जो कि प्रवेश बिंदु के करीब है, बाजार के उग्र होने से आसानी से ट्रिगर हो सकता है।
इस प्रकार, एक बार जब आप किसी भी प्रकार के व्यापारिक संकट का सामना करते हैं, तो आप अपने व्यापार को रोक सकते हैं।
लेन-देन की विविधता और समय अवधि के प्रभाव को ध्यान में नहीं रखा गया है।
इस रणनीति को और बेहतर बनाने के लिए, निम्नलिखित कदम उठाए जा सकते हैंः
विभिन्न नस्लों और समय अवधि के अनुसार अनुकूली स्टॉप लॉस स्टॉप पैरामीटर सेट करें।
प्रवृत्तियों को समझने के लिए तकनीकी संकेतकों को जोड़ना, ताकि आप उतार-चढ़ाव के दौरान फंसने से बच सकें।
प्रवृत्ति के संचालन को ट्रैक करने के लिए बाद के अधिग्रहण के अवसरों को सेट करें।
संयोजन संकेतों को फ़िल्टर करने के माध्यम से सफलता की वास्तविकता का आकलन करता है।
ट्रेंड की दिशा निर्धारित करने में मदद करने के लिए मशीन लर्निंग एल्गोरिदम जोड़ें।
यह रणनीति एक सरल ब्रेकआउट सिद्धांत पर आधारित है, जो ब्रेकआउट के बाद तेजी से संचालन को पकड़कर अतिरिक्त लाभ प्राप्त करता है। स्टॉप लॉस और स्टॉपस्टॉप सेटिंग्स का उपयोग करके जोखिम को नियंत्रित करना। रणनीति को समझना और लागू करना आसान है, इसे व्यक्तिगत आवश्यकताओं और बाजार की स्थिति के अनुसार समायोजित और अनुकूलित किया जा सकता है।
/*backtest
start: 2024-01-07 00:00:00
end: 2024-01-14 00:00:00
period: 3m
basePeriod: 1m
exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}]
*/
// This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © Dvitash
//@version=5
strategy("Casper SMC Silver Bullet", shorttitle = "Casper SB", overlay=true, calc_on_order_fills = true)
startTime = input(defval = "1000", title = "Start Time")
endTime = input(defval = "1600", title = "End Time")
contractAmt = input.int(defval = 2, title = "Contract Amount")
fvgCol = input.color(defval = color.rgb(63, 61, 179, 41), title = "FVG Color")
borderCol = input.color(defval = color.rgb(35, 33, 172, 41), title = "FVG Border Color")
fvgExtendLength = input.int(defval = 0, minval = 0, title = "FVG Extend Length")
allowedTime = not na(time(timeframe.period, startTime + "-" + endTime +":23456", "America/New_York"))
newDay = bool(ta.change(time('D')))
h = hour(time('1'), "America/New_York")
var bool fvgDrawn = na
var float entryPrice = na
var float stopPrice = na
var float tpPrice = na
if newDay
fvgDrawn := false
// a_allBoxes = box.all
// if array.size(a_allBoxes) > 0
// for i = 0 to array.size(a_allBoxes) - 1
// box.delete(array.get(a_allBoxes, i))
if allowedTime and barstate.isconfirmed and h <= 16
//Long FVG
if high[2] < low and not fvgDrawn
// box.new(bar_index[2], low, bar_index + fvgExtendLength, high[2], bgcolor = fvgCol, border_color = borderCol)
stopPrice := low[2]
entryPrice := low
tpPrice := entryPrice + (math.abs(low[2] - entryPrice) * 2)
// log.info("SL: " + str.tostring(stopPrice) + " Entry: " + str.tostring(entryPrice) + " TP: " + str.tostring(tpPrice))
strategy.entry("long", strategy.long, contractAmt, limit = entryPrice, comment = "Long Entry")
fvgDrawn := true
if low[2] > high and not fvgDrawn
// box.new(bar_index[2], high, bar_index + fvgExtendLength, low[2], bgcolor = fvgCol, border_color = borderCol)
stopPrice := high[2]
entryPrice := high
tpPrice := entryPrice - (math.abs(high[2] - entryPrice) * 2)
// log.info("SL: " + str.tostring(stopPrice) + " Entry: " + str.tostring(entryPrice) + " TP: " + str.tostring(tpPrice))
strategy.entry("short", strategy.short, contractAmt, limit = entryPrice, comment = "Short Entry")
fvgDrawn := true
if h >= 16
strategy.close_all()
strategy.cancel_all()
strategy.exit("long exit", from_entry = "long", qty = contractAmt, limit = tpPrice, stop = stopPrice, comment = "Long Exit")
strategy.exit("short exit", from_entry = "short", qty = contractAmt, limit = tpPrice, stop = stopPrice, comment = "Short Exit")