یہ ایک حکمت عملی ہے جو مختلف موم بتیوں کے نمونوں کو تجارتی سگنل کے طور پر استعمال کرتی ہے۔ یہ 9 عام موم بتیوں کے نمونوں کا پتہ لگاسکتی ہے اور ان نمونوں کی بنیاد پر خرید و فروخت کے سگنل تیار کرسکتی ہے۔
اس حکمت عملی کا بنیادی منطق مختلف موم بتیوں کے نمونوں کی نشاندہی کرنا ہے ، بشمول ڈوجی ، ہیمر ، مارننگ اسٹار وغیرہ۔ جب ایک بولش پیٹرن کی نشاندہی کی جاتی ہے تو ، خریدنے کا سگنل ٹرگر کیا جائے گا۔ جب ایک bearish پیٹرن کی نشاندہی کی جاتی ہے تو ، فروخت کا سگنل ٹرگر کیا جائے گا۔
مثال کے طور پر ، جب تین لگاتار سفید موم بتیاں زیادہ اونچائیوں اور زیادہ نچلی سطحوں کے ساتھ پائی جاتی ہیں تو ، یہ سگنل دیتا ہے
مثال کے طور پر ، جب ایک لمبی bearish موم بتی پچھلی bullish موم بتی کے جسم کو مکمل طور پر نگل جاتی ہے تو ، یہ ایک bearish نگلنگ پیٹرن بناتا ہے ، جس سے رجحان کی تبدیلی کا مطلب ہوتا ہے۔ اس صورت میں فروخت کا اشارہ شروع ہوجائے گا۔
اس قسم کی پیٹرن کی شناخت کی حکمت عملی مختصر مدت کے الٹ پوائنٹس کو پکڑ سکتی ہے اور خاص طور پر قلیل مدتی تجارت کے لئے موزوں ہے۔ درست پیٹرن سگنل کی نشاندہی قیمتوں میں الٹ پوائنٹس کو بروقت پکڑ سکتی ہے اور منافع بخش سمت میں جاسکتی ہے۔
سادہ تکنیکی اشارے کی حکمت عملی جیسے چلتی اوسط کے مقابلے میں ، موم بتی پیٹرن کی حکمت عملی میں قیمت کی کارروائی اور مارکیٹ کے جذبات کا فیصلہ شامل ہوتا ہے ، جس سے تجارتی سگنل زیادہ درست اور قابل اعتماد ہوجاتے ہیں۔
یہ حکمت عملی بنیادی طور پر موم بتی کے نمونوں کی درست شناخت پر انحصار کرتی ہے۔ اگر پتہ لگانے میں غلطی ہو جاتی ہے تو ، غلط تجارتی سگنل پیدا کرنا اور نقصانات کا سبب بننا آسان ہے۔
اس کے علاوہ، کوئی بھی تکنیکی تجزیہ کی حکمت عملی مکمل طور پر نظام کے خطرات جیسے پالیسی کے اثرات، سیاہ سوان واقعات وغیرہ سے بچ نہیں سکتی جو تجارت کو متاثر کرسکتے ہیں.
اسٹاپ نقصان کے ذریعہ خطرے کو کنٹرول کیا جاسکتا ہے۔ جب قیمت مخالف سمت کی طرف ایک حد سے گزرتی ہے تو ، اسٹاپ نقصان کو بروقت پوزیشنوں سے باہر نکلنے کے لئے متحرک کیا جاسکتا ہے۔
سگنل کی تصدیق کے لئے زیادہ موثر موم بتی کے نمونوں کو شامل کیا جاسکتا ہے ، جیسے ہتھوڑا ، الٹ ہتھوڑا ، الگ کرنے والی لائنیں وغیرہ۔
سگنل فلٹرنگ کے لئے دوسرے اشارے شامل کیے جاسکتے ہیں ، غیر یقینی مارکیٹ کے ماحول میں سگنل لینے سے گریز کرتے ہیں۔ MACD ، RSI جیسے اشارے کے اشارے کو کم معیار کے موم بتی کے اشاروں کو فلٹر کرنے کے لئے استعمال کیا جاسکتا ہے۔
اسٹاپ نقصان کی منطق کو اس وقت متحرک کرنے کے لئے بہتر بنایا جاسکتا ہے جب قیمت مخالف سمت کی طرف ایک حد سے باہر نکل جاتی ہے۔ اسٹاپ نقصان کی حد کو متحرک طور پر ایڈجسٹ کرنے کے لئے اتار چڑھاؤ کے اشارے کے ساتھ مل کر۔
یہ ایک بہت ہی عملی قلیل مدتی تجارتی حکمت عملی ہے۔ یہ تجارتی سگنل پیدا کرنے اور قلیل مدتی الٹ جانے کے مواقع کو حاصل کرنے کے لئے عام موم بتی کے نمونوں کی نشاندہی کرتی ہے۔ خطرات کو کنٹرول کرنے اور کارکردگی کو بہتر بنانے کے ل potential ممکنہ خطرات کا نوٹس لینے اور مناسب طریقے سے اصلاح کرنے کی بھی ضرورت ہے۔
/*backtest start: 2022-12-12 00:00:00 end: 2023-12-18 00:00:00 period: 1d basePeriod: 1h exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //@version=3 //Dan Pasco strategy("Candlestick Signals Strategy" , shorttitle="Candlestick Signal Strategy $1000", overlay = true , initial_capital = 1000) //Settings input menu dojicon = input(title = "Show Doji's", type=bool, defval = true) gravedojicon = input(title = "Gravestone Doji/Dragonfly Doji", type=bool, defval = true) tbctwscon = input(title = "3 Red Crows/3 Green Soldiers", type=bool, defval = true) tlscon = input(title = "Three Line Strike", type=bool, defval = true) pcon = input(title = "Piercing/Dark Cloud", type=bool, defval = true) mscon = input(title = "Morning Star", type=bool, defval = true) escon = input(title = "Evening Star", type=bool, defval = true) econ = input(title = "Engulfing", type=bool, defval = true) hcon = input(title = "Hammer", type=bool, defval = true) fscon = input(title = "Falling Star", type=bool, defval = true) //Doji Up dojiup = (open-close)>0 ? (high-open)>(open-close) and (close-low)>(open-close) and (close-low)>(high-open) and (open-close)<((high-open)/8) : (open-low)>(close-open) and (high-close)>(close-open) and (open-low)>(high-close) and (close-open)<((high-close)/8) and dojicon == true plotshape(dojiup, style=shape.cross,location=location.belowbar, text="Doji", color=black) //Doji Down dojidown = (open-close)>0 ? (high-open)>(open-close) and (close-low)>(open-close) and (high-open)>(close-low) and (open-close)<((close-low)/8) : (open-low)>(close-open) and (high-close)>(close-open) and (high-close)>(open-low) and (close-open)<((high-close)/8) and dojicon == true plotshape(dojidown, style=shape.cross,location=location.abovebar, text="Doji", color=black) //Gravestone Doji Bull gravedojibull = (close-open)>0 and ((high-close)/8)>(close-open) and ((high-close)/5)>(open-low) and gravedojicon == true plotshape(gravedojibull, style=shape.arrowdown,location=location.abovebar, text="Gravestone Doji", color=red) //Gravestone Doji Bear gravedojibear = (open-close)>0 and ((high-open)/8)>(open-close) and ((high-open)/5)>(close-low) and gravedojicon == true plotshape(gravedojibear, style=shape.arrowdown,location=location.abovebar, text="Gravestone Doji", color=red) //Dragonfly Doji Bull dragondojibull = (close-open)>0 and ((open-low)/8)>(close-open) and ((open-low)/5)>(high-close) and gravedojicon == true plotshape(dragondojibull, style=shape.arrowup,location=location.belowbar, text="Dragonfly Doji", color=green) //Dragonfly Doji Bear dragondojibear = (open-close)>0 and ((close-low)/8)>(open-close) and ((close-low)/5)>(high-open) and gravedojicon == true plotshape(dragondojibear, style=shape.arrowup,location=location.belowbar, text="Dragonfly Doji", color=green) //Three Black Crows tbc = (low[2]<low[3] and low[1]<low[2] and low<low[1] and high[2]<high[3] and high[1]<high[2] and high<high[1] and (close[3]-open[3])>0 and (open[2]-close[2])>0 and (open[1]-close[1])>0 and (open-close)>0 and (open-close)>(close-low) and (open-close)>(high-open) and (open[1]-close[1])>(close[1]-low[1]) and (open[1]-close[1])>(high[1]-open[1]) and (open[2]-close[2])>(close[2]-low[2]) and (open[2]-close[2])>(high[2]-open[2]) and tbctwscon == true) plotshape(tbc, style=shape.arrowdown,location=location.abovebar, text="3 Red Crows", color=red) //Three White Soldiers tws = (high[2]>high[3] and high[1]>high[2] and high>high[1] and low[2]>low[3] and low[1]>low[2] and low>low[1] and (open[3]-close[3])>0 and (close[2]-open[2])>0 and (close[1]-open[1])>0 and (close-open)>0 and (close-open)>(open-low) and (close-open)>(high-close) and (close[1]-open[1])>(open[1]-low[1]) and (close[1]-open[1])>(high[1]-close[1]) and (close[2]-open[2])>(open[2]-low[2]) and (close[2]-open[2])>(high[2]-close[2]) and tbctwscon == true) plotshape(tws, style=shape.arrowup,location=location.belowbar, text="3 Green Soldiers", color=green) //Three Line Strike Up tlsu = ((close-open)>0 and (open[1]-close[1])>0 and (open[2]-close[2])>0 and (open[3]-close[3])>0 and open<close[1] and low[1]<low[2] and low[2]<low[3] and high>high[3] and low<low[1] and tlscon == true) plotshape(tlsu, style=shape.arrowup,location=location.belowbar, text="3 Line Strike", color=green) //Three Line Strike Down tlsd = ((open-close)>0 and (close[1]-open[1])>0 and (close[2]-open[2])>0 and (close[3]-open[3])>0 and open>close[1] and high[1]>high[2] and high[2]>high[3] and low<low[3] and high>high[1] and tlscon == true) plotshape(tlsd, style=shape.arrowdown,location=location.abovebar, text="3 Line Strike", color=red) //Piercing Up pu = ((open[1]-close[1])>0 and (close-open)>0 and (open[1]-close[1])>(high[1]-open[1]) and (open[1]-close[1])>(close[1]-low[1]) and (close-open)>(high-close) and (close-open)>(open-low) and open<close[1] and ((open[1]+close[1])/2)<close and ((close-open)/2)>(high-close) and close<open[1] and (high<high[1] or low>low[1]) and pcon == true) plotshape(pu, style=shape.arrowup,location=location.belowbar, text="Piercing Up", color=green) //Dark Cloud dc = ((close[1]-open[1])>0 and (open-close)>0 and (close[1]-open[1])>(high[1]-close[1]) and (close[1]-open[1])>(open[1]-low[1]) and (open-close)>(high-open) and (open-close)>(close-low) and open>close[1] and ((open[1]+close[1])/2)>close and ((open-close)/2)>(close-low) and close>open[1] and (high<high[1] or low>low[1]) and pcon == true) plotshape(dc, style=shape.arrowdown,location=location.abovebar, text="Dark Cloud", color=red) //Morning Star 1 Up ms1u = ((open[2]-close[2])>0 and (close-open)>0 and (open[1]-close[1])>=0 and (open[2]-close[2])>(high[2]-open[2]) and (open[2]-close[2])>(close[2]-low[2]) and (close-open)>(high-close) and (close-open)>(open-low) and (close-open)>(open[1]-close[1]) and (open[2]-close[2])>(open[1]-close[1]) and open[1]<close[2] and open[1]<open and open[1]!=close[1] and mscon == true) plotshape(ms1u, style=shape.arrowup,location=location.belowbar, text="Morning Star", color=green) //Morning Star 2 Up ms2u = ((open[2]-close[2])>0 and (close-open)>0 and (close[1]-open[1])>=0 and (open[2]-close[2])>(high[2]-open[2]) and (open[2]-close[2])>(close[2]-low[2]) and (close-open)>(high-close) and (close-open)>(open-low) and (close-open)>(close[1]-open[1]) and (open[2]-close[2])>(close[1]-open[1]) and close[1]<close[2] and close[1]<open and open[1]!=close[1] and mscon == true) plotshape(ms2u, style=shape.arrowup,location=location.belowbar, text="Morning Star X2", color=green) //Evening Star 1 Down es1d = ((close[2]-open[2])>0 and (open-close)>0 and (close[1]-open[1])>=0 and (close[2]-open[2])>(high[2]-close[2]) and (close[2]-open[2])>(open[2]-low[2]) and (open-close)>(high-open) and (open-close)>(close-low) and (open-close)>(close[1]-open[1]) and (close[2]-open[2])>(close[1]-open[1]) and open[1]>close[2] and open[1]>open and escon == true) plotshape(es1d, style=shape.arrowdown,location=location.abovebar, text="Evening Star", color=red) //Evening Star 2 Down es2d = ((close[2]-open[2])>0 and (open-close)>0 and (open[1]-close[1])>=0 and (close[2]-open[2])>(high[2]-close[2]) and (close[2]-open[2])>(open[2]-low[2]) and (open-close)>(high-open) and (open-close)>(close-low) and (open-close)>(open[1]-close[1]) and (close[2]-open[2])>(open[1]-close[1]) and close[1]>close[2] and close[1]>open and close[1]!=open[1] and escon == true) plotshape(es2d, style=shape.arrowdown,location=location.abovebar, text="Evening X2", color=red) //Bullish Engulfing beu = (open[1]-close[1])>0 and (close-open)>0 and high>high[1] and low<low[1] and (close-open)>(open[1]-close[1]) and (close-open)>(high-close) and (close-open)>(open-low) and econ == true plotshape(beu, style=shape.arrowup,location=location.belowbar, text="Engulfing", color=green) //Bearish Engulfing bed = (close[1]-open[1])>0 and (open-close)>0 and high>high[1] and low<low[1] and (open-close)>(close[1]-open[1]) and (open-close)>(high-open) and (open-close)>(close-low) and econ == true plotshape(bed, style=shape.arrowdown,location=location.abovebar, text="Engulfing", color=red) //Bullish Hammer Up bhu1 = (close-open)>0 and ((close-open)/3)>(high-close) and ((open-low)/2)>(close-open) and (close-open)>((open-low)/8) and hcon == true plotshape(bhu1, style=shape.arrowup,location=location.belowbar, text="Hammer", color=green) //Bearish Hammer Up bhu2 = (open-close)>0 and ((open-close)/3)>(high-open) and ((close-low)/2)>(open-close) and (open-close)>((close-low)/8) and hcon == true plotshape(bhu2, style=shape.arrowup,location=location.belowbar, text="Hammer", color=green) //Bullish Falling Star bfs1 = (close-open)>0 and ((close-open)/3)>(open-low) and ((high-close)/2)>(close-open) and (close-open)>((high-close)/8) and fscon == true plotshape(bfs1, style=shape.arrowdown,location=location.abovebar, text="Falling Star", color=red) //Bearish Falling Star bfs2 = (open-close)>0 and ((open-close)/3)>(close-low) and ((high-open)/2)>(open-close) and (open-close)>((high-open)/8) and fscon == true plotshape(bfs2, style=shape.arrowdown,location=location.abovebar, text="Falling Star", color=red) //Declaring the buy signals buy = (dragondojibear == true and gravedojicon == true) or (dragondojibull == true and gravedojicon == true) or (tws == true and tbctwscon == true) or (tlsu == true and tlscon == true) or (pu == true and pcon == true) or (ms1u == true and mscon == true) or (ms2u == true and mscon == true) or (beu == true and econ == true) or (bhu1 == true and hcon == true) or (bhu2 == true and hcon == true) //Declaring the sell signals sell = (gravedojibear == true and gravedojicon == true) or (gravedojibull == true and gravedojicon == true) or (tbc == true and tbctwscon == true) or (tlsd == true and tlscon == true) or (dc == true and pcon == true) or (es1d == true and escon == true) or (es2d == true and escon == true) or (bed == true and econ == true) or (bfs1 == true and fscon == true) or (bfs2 == true and fscon == true) //Execute historic backtesting ordersize = floor(strategy.equity/close) // To dynamically calculate the order size as the account equity increases or decreases. strategy.entry("long",strategy.long,ordersize,when=buy) // Buy strategy.close("long", when=sell) //Sell