یہ حکمت عملی مارکیٹ میں اتار چڑھاؤ کی سمت اور شدت کا فیصلہ کرنے کے لئے K لائنز کی اعلی اور کم قیمتوں میں ہونے والی تبدیلیوں کا استعمال کرتی ہے ، اور مختصر مدتی کارروائیوں کو نافذ کرنے کے لئے مجموعی رجحان کا فیصلہ کرنے کے لئے چلتی اوسط کو جوڑتی ہے۔ یہ بنیادی طور پر واضح اتار چڑھاؤ والی اقسام کے لئے موزوں ہے۔
یہ حکمت عملی پہلے پچھلی K لائن کے مقابلے میں K لائنوں کی سب سے زیادہ اور سب سے کم قیمتوں میں ہونے والی تبدیلیوں کا جائزہ لیتی ہے۔ اگر سب سے زیادہ قیمت بڑھتی ہے تو اسے 1 کے طور پر ریکارڈ کیا جاتا ہے۔ اگر سب سے کم قیمت گرتی ہے تو اسے -1 کے طور پر ریکارڈ کیا جاتا ہے ، بصورت دیگر اسے 0 کے طور پر ریکارڈ کیا جاتا ہے۔ پھر مارکیٹ میں اتار چڑھاؤ کی سمت اور شدت کا فیصلہ کرنے کے لئے ایک خاص سائیکل کے اندر سب سے زیادہ اور سب سے کم قیمتوں میں ہونے والی تبدیلیوں کی اوسط قیمت کا حساب لگائیں۔
اسی وقت ، حکمت عملی میں حالیہ سائیکل میں سب سے زیادہ اور سب سے کم قیمتیں ریکارڈ کی جاتی ہیں۔ جب چلتی اوسط رجحان کی تبدیلی کا تعین کرتی ہے تو ، ریکارڈ شدہ قیمتوں کے ساتھ مل کر کلیدی قیمتوں کی سطحوں کا تعین کرنے کے لئے اسٹاپ نقصان اور منافع کی سطح تشکیل دیتی ہے۔
انٹری سمت کا تعین چلتی اوسط سے ہوتا ہے۔ اوپری ریل سے اوپر طویل اور نچلی ریل سے نیچے مختصر جائیں۔ اسٹاپ نقصان اور منافع کی سطح کلیدی قیمت کی سطحوں کا فیصلہ کرکے تشکیل دی جاتی ہے۔
اس حکمت عملی کا سب سے بڑا فائدہ منافع کمانے کے لئے قلیل مدتی اتار چڑھاؤ کی خصوصیات کا مکمل استعمال کرنا ہے۔ کلیدی قیمتوں کی سطحوں کی بنیاد پر اسٹاپ نقصان اور منافع حاصل کرنے کا تعین کرکے ، حکمت عملی واضح قواعد کے تحت چلتی ہے۔ اسی وقت ، یہ غیر سازگار مارکیٹوں کو فلٹر کرنے اور غیر ضروری نقصانات سے بچنے کے لئے رجحان کی تشخیص کو جوڑتی ہے۔
اس حکمت عملی کا سامنا کرنے والے اہم خطرات یہ ہیں:
اگر مارکیٹ میں اتار چڑھاؤ نہیں ہے تو کوئی منافع نہیں ہے۔
غیر ضروری نقصانات کی وجہ سے قیمتوں کو روکنے کے نقصان کی سطح کو توڑنے کی وجہ سے.
رجحان کا غلط فیصلہ مواقع سے محروم ہوسکتا ہے یا مخالف سمت میں کارروائی کرسکتا ہے۔ حرکت پذیر اوسط پیرامیٹرز کو اس کے مطابق ایڈجسٹ کیا جاسکتا ہے۔
اس حکمت عملی کو مندرجہ ذیل پہلوؤں میں بہتر بنایا جاسکتا ہے:
مختلف اقسام کی خصوصیات کے مطابق چلتی اوسط سائیکل کو ایڈجسٹ کریں.
منافع اور نقصان کو متوازن کرنے کے لئے سٹاپ منافع اور سٹاپ نقصان کی حد کو بہتر بنائیں.
غلط آپریشن سے بچنے کے لئے فیصلے کے لئے دیگر اشارے شامل کریں.
زیادہ سے زیادہ نقصان کو کنٹرول کرنے کے لئے خودکار سٹاپ نقصان شامل کریں.
عام طور پر ، یہ حکمت عملی ایک ایسی حکمت عملی ہے جو قلیل مدتی اتار چڑھاؤ کا فائدہ اٹھاتی ہے۔ یہ منافع کمانے کے لئے قیمتوں کی چھوٹی چھوٹی حرکتوں کا بھرپور استعمال کرتی ہے۔ اسی وقت ، جب رجحان غیر موافق ہوتا ہے تو یہ خطرات پر سختی سے قابو پالتا ہے اور بروقت نقصانات کو کم کرتا ہے۔ یہ ان سرمایہ کاروں کے لئے موزوں ہے جو نسبتا prudent محتاط رویہ کے ساتھ مستحکم واپسی کا پیچھا کرتے ہیں۔ مناسب پیرامیٹر ایڈجسٹمنٹ کے ساتھ ، یہ اتار چڑھاؤ والی منڈیوں میں اچھے نتائج حاصل کرسکتا ہے۔
/*backtest start: 2024-01-16 00:00:00 end: 2024-01-16 22:45:00 period: 15m basePeriod: 5m exchanges: [{"eid":"Futures_Binance","currency":"BTC_USDT"}] */ //Noro //2018 //@version=3 strategy(title = "Noro's ZZ-3 Strategy", shorttitle = "ZZ-3 str", overlay = true, default_qty_type = strategy.percent_of_equity, default_qty_value = 100, pyramiding = 0) //Settings needlong = input(true, defval = true, title = "Long") needshort = input(true, defval = true, title = "Short") capital = input(100, defval = 100, minval = 1, maxval = 10000, title = "Capital, %") corr = input(0.0, title = "Correction, %") bars = input(1, minval = 1) revers = input(false, defval = false, title = "revers") showll = input(true, defval = true, title = "Show Levels") showbg = input(false, defval = false, title = "Show Background") showar = input(false, defval = false, title = "Show Arrows") fromyear = input(1900, defval = 1900, minval = 1900, maxval = 2100, title = "From Year") toyear = input(2100, defval = 2100, minval = 1900, maxval = 2100, title = "To Year") frommonth = input(01, defval = 01, minval = 01, maxval = 12, title = "From Month") tomonth = input(12, defval = 12, minval = 01, maxval = 12, title = "To Month") fromday = input(01, defval = 01, minval = 01, maxval = 31, title = "From day") today = input(31, defval = 31, minval = 01, maxval = 31, title = "To day") //Levels hbar = 0 hbar := high > high[1] ? 1 : high < high[1] ? -1 : 0 lbar = 0 lbar := low > low[1] ? 1 : low < low[1] ? -1 : 0 uplevel = 0.0 dnlevel = 0.0 hh = highest(high, bars + 1) ll = lowest(low, bars + 1) uplevel := hbar == -1 and sma(hbar, bars)[1] == 1 ? hh + ((hh / 100) * corr) : uplevel[1] dnlevel := lbar == 1 and sma(lbar, bars)[1] == -1 ? ll - ((ll / 100) * corr) : dnlevel[1] //Lines upcol = na upcol := showll == false ? na : uplevel != uplevel[1] ? na : lime plot(uplevel, color = upcol, linewidth = 2) dncol = na dncol := showll == false ? na : dnlevel != dnlevel[1] ? na : red plot(dnlevel, color = dncol, linewidth = 2) //Background size = strategy.position_size trend = 0 trend := size > 0 ? 1 : size < 0 ? -1 : high >= uplevel ? 1 : low <= dnlevel ? -1 : trend[1] col = showbg == false ? na : trend == 1 ? lime : trend == -1 ? red : na bgcolor(col) //Arrows longsignal = false shortsignal = false longsignal := size > size[1] shortsignal := size < size[1] plotarrow(longsignal and showar and needlong ? 1 : na, colorup = blue, colordown = blue, transp = 0) plotarrow(shortsignal and showar and needshort ? -1 : na, colorup = blue, colordown = blue, transp = 0) //Trading lot = 0.0 lot := size != size[1] ? strategy.equity / close * capital / 100 : lot[1] if uplevel > 0 and dnlevel > 0 and revers == false strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, stop = uplevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, stop = dnlevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if uplevel > 0 and dnlevel > 0 and revers == true strategy.entry("Long", strategy.long, needlong == false ? 0 : lot, limit = dnlevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) strategy.entry("Short", strategy.short, needshort == false ? 0 : lot, limit = uplevel, when=(time > timestamp(fromyear, frommonth, fromday, 00, 00) and time < timestamp(toyear, tomonth, today, 23, 59))) if time > timestamp(toyear, tomonth, today, 23, 59) strategy.close_all()