छाया व्यापार रणनीति संभावित बाजार उलट अवसरों को निर्धारित करने के लिए लंबी निचली या ऊपरी छाया के साथ के-लाइन की पहचान करती है। जब लंबी निचली छाया की पहचान की जाती है तो यह लंबी हो जाती है और जब लंबी ऊपरी छाया की पहचान की जाती है तो यह छोटी हो जाती है। रणनीति मुख्य रूप से व्यापार के लिए छाया उलट के सामान्य सिद्धांत का उपयोग करती है।
छाया व्यापार रणनीति का मूल तर्क K-लाइनों में लंबी ऊपरी और निचली छाया की पहचान करना है। रणनीति K-लाइन शरीर के आकार की गणना करती हैcorpo
और छाँवों कीpinnaL
औरpinnaS
. जब छाया का आकार शरीर के आकार से एक निश्चित गुणक से बड़ा होता है, तो यह विचार करता है कि उलट अवसर हो सकते हैं। विशेष रूप से रणनीति में निम्नलिखित चरण शामिल हैंः
corpo
, जो कि खुलने और बंद होने की कीमत के बीच के अंतर का पूर्ण मूल्य है।pinnaL
, जो उच्चतम मूल्य और बंद मूल्य के बीच अंतर का पूर्ण मूल्य है।pinnaS
, जो कि सबसे कम मूल्य और बंद मूल्य के बीच अंतर का पूर्ण मूल्य है।pinnaL > (corpo*size)
, जहांsize
एक समायोज्य पैरामीटर है।pinnaS > (corpo*size)
.इसके अतिरिक्त, रणनीति यह भी जांचती है कि क्या K-लाइन रेंजdim
न्यूनतम मूल्य से अधिक हैmin
एक नगण्य सीमा के साथ तुच्छ K-लाइनों को फ़िल्टर करने के लिए। स्टॉप लॉस और ले लाभ बाहर निकलने के लिए इस्तेमाल कर रहे हैं।
छाया व्यापार रणनीति एक सरल और व्यावहारिक अल्पकालिक व्यापार रणनीति है। यह छाया उलट के सामान्य सिद्धांत का उपयोग करके व्यापार संकेत उत्पन्न करती है। रणनीति तर्क सरल और लागू करने में आसान है, और उत्पाद मतभेदों के अनुसार समायोजित और अनुकूलित किया जा सकता है। साथ ही, छाया व्यापार में कुछ जोखिम भी होते हैं। इसे झूठे व्यापारों को कम करने के लिए फ़िल्टरिंग के लिए प्रवृत्ति और अन्य कारकों के साथ जोड़ा जाना चाहिए। जब ठीक से उपयोग किया जाता है, तो छाया व्यापार एक मात्रा व्यापार प्रणाली में एक प्रभावी घटक बन सकता है।
/*backtest start: 2023-10-01 00:00:00 end: 2023-10-11 23:59:59 period: 10m basePeriod: 1m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=2 strategy("Shadow Trading", overlay=true) size = input(1,type=float) pinnaL = abs(high - close) pinnaS = abs(low-close) scarto = input(title="Tail Tollerance", type=float, defval=0.0018) corpo = abs(close - open) dim = abs(high-low) min = input(0.001) shortE = (open + dim) longE = (open - dim) barcolor(dim > min and (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto) ? navy : na) longcond = (dim > min) and (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto) minimo=low+scarto massimo=high+scarto barcolor( dim > min and(close < open) and (pinnaS > (corpo*size)) and (high-open<scarto) ? orange: na) shortcond = (dim > min) and(close < open) and (pinnaS > (corpo*size)) and (high-open<scarto) //plot(shortE) //plot(longE) //plot(open) ss= shortcond ? close : na ll=longcond ? close : na offset= input(0.00000) DayClose = 2 closup = barssince(change(strategy.opentrades)>0) >= DayClose longCondition = (close > open) and (pinnaL > (corpo*size)) and (open-low<scarto) crossFlag = longcond ? 1 : 0 monthBegin = input(1,maxval = 12) yearBegin = input(2013, maxval= 2015, minval=2000) if(month(time)>monthBegin and year(time) >yearBegin) if (longcond) strategy.entry("short", strategy.short, stop = low - offset) //strategy.close("short", when = closup) shortCondition = (close < open) and (pinnaS > (corpo*size)) and (high-open<scarto) if(month(time)>monthBegin and year(time) >yearBegin) if (shortcond) strategy.entry("long", strategy.long, stop = high + offset) //strategy.close("long", when = closup) Target = input(20) Stop = input(70) //- 2 Trailing = input(0) CQ = 100 TPP = (Target > 0) ? Target*10: na SLP = (Stop > 0) ? Stop*10 : na TSP = (Trailing > 0) ? Trailing : na strategy.exit("Close Long", "long", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP) strategy.exit("Close Short", "short", qty_percent=CQ, profit=TPP, loss=SLP, trail_points=TSP)