یہ حکمت عملی بل ولیمز
حکمت عملی کے اہم تجارتی اصول یہ ہیں:
قیمت کی کارروائی کے لئے باقاعدہ موم بتیوں کے بجائے ہائکن آشی موم بتیوں کا استعمال۔ ہائکن آشی شور کو فلٹر کرتا ہے اور رجحان کی نشاندہی کرتا ہے۔
بل ولیمز گلیگیٹر سے تین چلتی اوسط لائنوں کا اطلاق کرتے ہوئے - جبڑے، دانت اور ہونٹ۔ وہ رجحان کی سمت کا تعین کرنے کے لئے چلتی اوسط کی طرح کام کرتے ہیں۔
جب لائنوں کو جبڑے (سب سے کم) ، دانت (درمیانی) ، ہونٹ (سب سے زیادہ) کے طور پر اسٹیک کیا جاتا ہے تو ، یہ ایک اپ ٹرینڈ کی نشاندہی کرتا ہے۔ جب جبڑے (سب سے زیادہ) ، دانت (درمیانی) ، ہونٹ (سب سے کم) کے ساتھ الٹ دیا جاتا ہے تو ، یہ ایک ڈاؤن ٹرینڈ کی نشاندہی کرتا ہے۔
اندراجات ہائکن آشی موم بتی کی سمت + تمساح لائن کی سیدھ پر مبنی ہیں۔ تیزی سے موم بتیوں اور بیل سیٹ اپ پر لمبی اندراجات؛ bearish موم بتیوں اور bear سیٹ اپ پر مختصر اندراجات۔
باہر نکلتا ہے جب تمساح لائنوں کراس، رجحان کی تبدیلی کا اشارہ.
فکسڈ لے منافع، سٹاپ نقصان کے پوائنٹس خطرے کے انتظام کے لئے استعمال کیا. ہدف پوائنٹس، سٹاپ نقصان کے پوائنٹس، ٹریلنگ سٹاپ وغیرہ تشکیل دے سکتے ہیں.
ہائکن آشی اور ایلیگیٹر کے دوہری فلٹرز کو یکجا کرنے سے ایک اعلی امکان مختصر مدت کی تجارتی حکمت عملی پیدا ہوتی ہے۔
اس حکمت عملی کے اہم فوائد یہ ہیں:
دوہری اشارے فلٹرنگ جھوٹے سگنل کو کم سے کم کرتی ہے۔ ہیکن ایشی + ایلیگیٹر سگنل کے معیار کو بہتر بناتا ہے۔
واضح اور بدیہی رجحان کی نشاندہی۔ مگرمچرچھ لائنوں میں واضح بیل / ریچھ سگنل ہوتے ہیں۔
قلیل مدتی اسکیلپنگ کے لئے موثر۔ 1 منٹ سے 5 منٹ کے چارٹ پر قیمتوں میں اتار چڑھاؤ کو پکڑتا ہے۔
سادہ پیرامیٹرز۔ پیچیدہ اصلاح کی ضرورت نہیں ہے۔
سخت رسک مینجمنٹ کے ذریعے منافع لیں، سٹاپ نقصان پوائنٹس.
داخلہ/باہر نکلنے کے قواعد کو الگٹر لائن کراسنگ پر مبنی بنایا گیا ہے۔
لاگو کرنے اور نقل کرنے میں آسان۔ ابتدائی دوستانہ۔
غور کرنے کے لئے اہم خطرات یہ ہیں:
وِپساؤ کے باعث ڈراؤونگ کا خطرہ۔ کثرت سے التماس سگنلز تجارت اور اخراجات میں اضافہ کر سکتے ہیں۔
رینج سے منسلک مارکیٹ کا خطرہ۔ کشیدہ حالات کے دوران کراس اوورز ناکام ہوجاتے ہیں۔
زیادہ سے زیادہ اصلاح کا خطرہ۔ خراب پیرامیٹر کی ترتیب سے منحنی فٹنگ۔
اشارے کی ناکامی کا خطرہ۔ شدید حالات کے دوران گینگڑ کام کرنا بند کر سکتا ہے۔
سٹاپ نقصان کی کمی کا خطرہ۔ خالی جگہیں غیر منصفانہ نقصانات کا سبب بننے والی رکاوٹوں کا سبب بن سکتی ہیں۔
اعلی تجارتی تعدد کے خطرات۔ زیادہ تجارت سے لین دین کے اخراجات میں بھی اضافہ ہوتا ہے۔
توقعات کا تجزیہ ، بہتر اسٹاپ ، کنٹرول شدہ تعدد وغیرہ سے ان میں سے بہت سے خطرات کو حل کیا جاسکتا ہے۔
حکمت عملی کو بہتر بنانے کے کچھ طریقے یہ ہیں:
زیادہ جیت کی شرح کے لئے RSI جیسے اضافی فلٹر شامل کریں.
ہر تجارت میں نقصان کو کنٹرول کرنے کے لئے متحرک اے ٹی آر اسٹاپ استعمال کریں۔
شرط کے سائز کو بہتر بنانے کے لئے پوزیشن سائزنگ کے قواعد شامل کریں۔ رجحان کی طاقت کے ساتھ اضافہ کریں۔
انٹری ٹائمنگ کے لئے چارٹ پیٹرن یا دیگر تکنیکی تجزیہ کا امتزاج کریں۔
آلہ کی قسم (اسٹاک، فاریکس وغیرہ) کی بنیاد پر پیرامیٹرز کو بہتر بنائیں.
موافقت پذیر پیرامیٹر اصلاح کے لئے مشین لرننگ متعارف کروائیں۔
منافع لینے کے مقابلے میں سٹاپ نقصان کے تناسب کو ٹھیک کرنے کے لئے توقعات کا تجزیہ کریں.
مسلسل بہتری کے ساتھ، حکمت عملی ایک مضبوط قلیل مدتی تجارتی نظام بن سکتی ہے.
یہ حکمت عملی ہائکن آشی کو ولیمز
/*backtest start: 2022-09-18 00:00:00 end: 2023-09-24 00:00:00 period: 4d basePeriod: 1d 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/ // © 03.freeman //Scalping strategy based on Bill Williams Alligator technique but applied to heikin ashi candles //This strategy has to be applied to standard candles and low time frames (1min to 5min) //@version=4 strategy("Bill Williams Alligator improved", shorttitle="Scalping alligator",overlay=true) //source = input(close) useHA = input (true,"Use heikin ashi candle?") // ----------MA calculation - ChartArt------------- smoothinput = input(1, minval=1, maxval=5, title='Moving Average Calculation: (1=SMA), (2=EMA), (3=WMA), (4=Linear), (5=VWMA)') calc_ma(src,l) => smoothinput == 1 ? sma(src, l):smoothinput == 2 ? ema(src, l):smoothinput == 3 ? wma(src, l):smoothinput == 4 ? linreg(src, l,0):smoothinput == 5 ? vwma(src,l):na //---------------------------------------------- heikinashi_close = security(heikinashi(syminfo.tickerid), timeframe.period, close) heikinashi_open = security(heikinashi(syminfo.tickerid), timeframe.period, open) heikinashi_hl2 = security(heikinashi(syminfo.tickerid), timeframe.period, hl2) direzione=heikinashi_close>heikinashi_open and heikinashi_close[1]>heikinashi_open[1]? 1 : heikinashi_close<heikinashi_open and heikinashi_close[1]<heikinashi_open[1]? -1 : 0 jawLength = input(13, minval=1, title="Jaw Length") teethLength = input(8, minval=1, title="Teeth Length") lipsLength = input(5, minval=1, title="Lips Length") jawOffset = input(8, title="Jaw Offset") teethOffset = input(5, title="Teeth Offset") lipsOffset = input(3, title="Lips Offset") jaw = calc_ma(heikinashi_hl2, jawLength) teeth = calc_ma(heikinashi_hl2, teethLength) lips = calc_ma(heikinashi_hl2, lipsLength) plot(jaw, title="jaw",offset = jawOffset, color=#3BB3E4) plot(teeth, title="teeth",offset = teethOffset, color=#FF006E) plot(lips, title="lips",offset = lipsOffset, color=#36C711) longCondition = direzione[0]==1 and jaw<teeth and jaw<lips and teeth<lips shortCondition = direzione[0]==-1 and jaw>teeth and jaw>lips and teeth>lips // Strategy: (Thanks to JayRogers) // === STRATEGY RELATED INPUTS === //tradeInvert = input(defval = false, title = "Invert Trade Direction?") // the risk management inputs inpTakeProfit = input(defval = 0, title = "Take Profit Points", minval = 0) inpStopLoss = input(defval = 0, title = "Stop Loss Points", minval = 0) inpTrailStop = input(defval = 0, title = "Trailing Stop Loss Points", minval = 0) inpTrailOffset = input(defval = 0, title = "Trailing Stop Loss Offset Points", minval = 0) // === RISK MANAGEMENT VALUE PREP === // if an input is less than 1, assuming not wanted so we assign 'na' value to disable it. useTakeProfit = inpTakeProfit >= 1 ? inpTakeProfit : na useStopLoss = inpStopLoss >= 1 ? inpStopLoss : na useTrailStop = inpTrailStop >= 1 ? inpTrailStop : na useTrailOffset = inpTrailOffset >= 1 ? inpTrailOffset : na // === STRATEGY - LONG POSITION EXECUTION === enterLong() => direzione[0]==1 and jaw<teeth and jaw<lips and teeth<lips // functions can be used to wrap up and work out complex conditions exitLong() => jaw>teeth or jaw>lips or teeth>lips strategy.entry(id = "Buy", long = true, when = enterLong() ) // use function or simple condition to decide when to get in strategy.close(id = "Buy", when = exitLong() ) // ...and when to get out // === STRATEGY - SHORT POSITION EXECUTION === enterShort() => direzione[0]==-1 and jaw>teeth and jaw>lips and teeth>lips exitShort() => jaw<teeth or jaw<lips or teeth<lips strategy.entry(id = "Sell", long = false, when = enterShort()) strategy.close(id = "Sell", when = exitShort() ) // === STRATEGY RISK MANAGEMENT EXECUTION === // finally, make use of all the earlier values we got prepped strategy.exit("Exit Buy", from_entry = "Buy", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset) strategy.exit("Exit Sell", from_entry = "Sell", profit = useTakeProfit, loss = useStopLoss, trail_points = useTrailStop, trail_offset = useTrailOffset) // === Backtesting Dates === thanks to Trost testPeriodSwitch = input(false, "Custom Backtesting Dates") testStartYear = input(2020, "Backtest Start Year") testStartMonth = input(1, "Backtest Start Month") testStartDay = input(1, "Backtest Start Day") testStartHour = input(0, "Backtest Start Hour") testPeriodStart = timestamp(testStartYear,testStartMonth,testStartDay,testStartHour,0) testStopYear = input(2020, "Backtest Stop Year") testStopMonth = input(12, "Backtest Stop Month") testStopDay = input(31, "Backtest Stop Day") testStopHour = input(23, "Backtest Stop Hour") testPeriodStop = timestamp(testStopYear,testStopMonth,testStopDay,testStopHour,0) testPeriod() => time >= testPeriodStart and time <= testPeriodStop ? true : false isPeriod = true // === /END if not isPeriod strategy.cancel_all() strategy.close_all()