ورود/ثبت‌نام

تحلیل تکنیکال anis86 درباره نماد CFX در تاریخ ۱۴۰۴/۶/۱۰

https://sahmeto.com/message/3747120
،تکنیکال،anis86

// version =5 indicator("DTT - Digital Time Theory (نظریة الزمن الرقمی)", overlay=true, max_lines_count=500, max_labels_count=500, max_boxes_count=50) //----------------------------- // ⚙️ الإعدادات العامة //----------------------------- string dtt_grpA = "الإعدادات العامة" string dtt_grpB = "عرض الخطوط" string dtt_grpC = "الألوان والسماکات" string dtt_grpD = "تسلسل 3-6-9" string dtt_grpE = "اللابلز والعناصر البصریة" string dtt_tzNy = input.string("America/New_York", "المنطقة الزمنیة لموعد البدایة", group=dtt_grpA) int dtt_startH = input.int(18, "ساعة البدایة (بتوقیت نیویورک)", minval=0, maxval=23, group=dtt_grpA) int dtt_startM = input.int(0, "دقیقة البدایة", minval=0, maxval=59, group=dtt_grpA) bool dtt_extendFuture = input.bool(true, "تمدید الخطوط أعلى/أسفل (عمودیة کاملة)", group=dtt_grpA) // إظهار/إخفاء کل طبقة bool dtt_showQuarter = input.bool(true, "إظهار أرباع الیوم (کل 6 ساعات)", group=dtt_grpB) bool dtt_show90m = input.bool(true, "إظهار خطوط 90 دقیقة", group=dtt_grpB) bool dtt_show22m5 = input.bool(true, "إظهار نبضات 22.5 دقیقة", group=dtt_grpB) // ألوان وسماکات color dtt_clQuarter = input.color(color.new(color.teal, 0), "لون ربع 6 ساعات", group=dtt_grpC) int dtt_wQuarter = input.int(2, "سُمک خط 6 ساعات", minval=1, maxval=5, group=dtt_grpC) color dtt_cl90 = input.color(color.new(color.orange, 0), "لون 90 دقیقة", group=dtt_grpC) int dtt_w90 = input.int(2, "سُمک خط 90 دقیقة", minval=1, maxval=5, group=dtt_grpC) color dtt_clBeat = input.color(color.new(color.gray, 0), "لون 22.5 دقیقة (الافتراضی)", group=dtt_grpC) int dtt_wBeat = input.int(1, "سُمک 22.5 دقیقة", minval=1, maxval=4, group=dtt_grpC) // تمییز 3-6-9 bool dtt_mark369 = input.bool(true, "تمییز تسلسل 3-6-9 على نبضات 22.5 دقیقة", group=dtt_grpD) color dtt_cl3 = input.color(color.new(color.lime, 0), "لون کل 3 نبضات", group=dtt_grpD) color dtt_cl6 = input.color(color.new(color.fuchsia, 0), "لون کل 6 نبضات", group=dtt_grpD) color dtt_cl9 = input.color(color.new(color.red, 0), "لون کل 9 نبضات (تغییر جذری)", group=dtt_grpD) int dtt_w369 = input.int(2, "سُمک خطوط 3-6-9", minval=1, maxval=5, group=dtt_grpD) // اللابلز bool dtt_showLabels = input.bool(true, "إظهار لابلز للخطوط", group=dtt_grpE) int dtt_lblSizeSel = input.int(10, "حجم خط اللابل", minval=8, maxval=16, group=dtt_grpE) int dtt_lblOffsetPx = input.int(20, "إزاحة رأسیة للّابل (بیکسل)", minval=0, maxval=100, group=dtt_grpE) bool dtt_showQuarterBg= input.bool(false, "تلوین خفیف لخلفیات الأرباع", group=dtt_grpE) color dtt_quarterBgCol = input.color(color.new(color.teal, 90), "لون خلفیة الربع", group=dtt_grpE) //----------------------------- // ⏱️ ثوابت زمنیة (بالمیلی ثانیة) //----------------------------- int dtt_msMinute = 60 * 1000 int dtt_msBeat = int(math.round(22.5 * dtt_msMinute)) // 22.5 دقیقة int dtt_ms90 = 90 * dtt_msMinute // 90 دقیقة int dtt_ms6h = 6 * 60 * dtt_msMinute // 6 ساعات //----------------------------- // 🧠 دوال مساعدة //----------------------------- var string dtt__tzTmp = dtt_tzNy // ✅ النسخة الصحیحة للدالة (بدون {} ) dtt_getAnchorForBar(_barTime) => nyY = year(_barTime, dtt__tzTmp) nyMo = month(_barTime, dtt__tzTmp) nyD = dayofmonth(_barTime, dtt__tzTmp) anchorToday = timestamp(dtt__tzTmp, nyY, nyMo, nyD, dtt_startH, dtt_startM) anchorPrev = anchorToday - 24 * 60 * 60 * 1000 _barTime >= anchorToday ? anchorToday : anchorPrev // هل عبرنا مضاعفاً جدیداً للفاصل الزمنی؟ dtt_crossedStep(_anchor, _intervalMs) => prevK = math.floor((nz(time [1]) - _anchor) / _intervalMs) nowK = math.floor((time - _anchor) / _intervalMs) nowK > prevK // یرسم خط عمودی کامل عند لحظة t dtt_makeVLine(t, col, w) => line.new(x1=t, y1= 10e10, x2=t, y2=-10e10, xloc=xloc.bar_time, extend=dtt_extendFuture ? extend.both : extend.none, color=col, width=w) // لابل dtt_makeLabel(t, txt, col) => label.new(x=t, y=high + ta.atr(14), xloc=xloc.bar_time, style=label.style_label_down, text=txt, textcolor=color.white, color=col, size=size.tiny, tooltip=txt) // خلفیة ربع (اختیاری) dtt_drawQuarterBox(t0, t1, c) => yLow = ta.lowest(low, 300) yHigh = ta.highest(high, 300) box.new(left=t0, top=yHigh, right=t1, bottom=yLow, xloc=xloc.bar_time, bgcolor=c, border_color=color.new(c, 100)) //----------------------------- // 🧩 المنطق الرئیسی //----------------------------- dtt_anchor = dtt_getAnchorForBar(time) dtt_delta = time - dtt_anchor //--------------- خطوط 22.5 دقیقة --------------- if dtt_show22m5 and dtt_delta >= 0 and dtt_crossedStep(dtt_anchor, dtt_msBeat) k = math.floor((time - dtt_anchor) / dtt_msBeat) tK = dtt_anchor + k * dtt_msBeat colBeat = dtt_clBeat wBeat = dtt_wBeat if dtt_mark369 step = (k + 1) is9 = step % 9 == 0 is6 = not is9 and step % 6 == 0 is3 = not is9 and not is6 and step % 3 == 0 colBeat := is9 ? dtt_cl9 : is6 ? dtt_cl6 : is3 ? dtt_cl3 : dtt_clBeat wBeat := is9 or is6 or is3 ? dtt_w369 : dtt_wBeat dtt_makeVLine(tK, colBeat, wBeat) if dtt_showLabels tag = dtt_mark369 ? "نبضة " + str.tostring(k + 1) : "22.5m" dtt_makeLabel(tK, tag, color.new(colBeat, 0)) //--------------- خطوط 90 دقیقة --------------- if dtt_show90m and dtt_delta >= 0 and dtt_crossedStep(dtt_anchor, dtt_ms90) m = math.floor((time - dtt_anchor) / dtt_ms90) tM = dtt_anchor + m * dtt_ms90 dtt_makeVLine(tM, dtt_cl90, dtt_w90) if dtt_showLabels tag90 = "90m #" + str.tostring(m) dtt_makeLabel(tM, tag90, color.new(dtt_cl90, 0)) //--------------- خطوط 6 ساعات (الأرباع) + خلفیات --------------- var int dtt_lastQuarterStart = na if dtt_showQuarter and dtt_delta >= 0 and dtt_crossedStep(dtt_anchor, dtt_ms6h) q = math.floor((time - dtt_anchor) / dtt_ms6h) tQ = dtt_anchor + q * dtt_ms6h dtt_makeVLine(tQ, dtt_clQuarter, dtt_wQuarter) if dtt_showLabels qInDay = q % 4 qName = qInDay == 0 ? "Q1" : qInDay == 1 ? "Q2" : qInDay == 2 ? "Q3" : "Q4" dtt_makeLabel(tQ, "ربع " + qName, color.new(dtt_clQuarter, 0)) if dtt_showQuarterBg if not na(dtt_lastQuarterStart) dtt_drawQuarterBox(dtt_lastQuarterStart, tQ, dtt_quarterBgCol) dtt_lastQuarterStart := tQ if barstate.isfirst and dtt_showQuarterBg and dtt_delta >= 0 q0 = math.floor((time - dtt_anchor) / dtt_ms6h) dtt_lastQuarterStart := dtt_anchor + q0 * dtt_ms6h if dtt_showQuarterBg and not na(dtt_lastQuarterStart) dtt_drawQuarterBox(dtt_lastQuarterStart, time, dtt_quarterBgCol) //----------------------------- // ℹ️ تلمیح مرئی أعلى الشارت //----------------------------- var label dtt_hdr = na if barstate.islast string hdrTxt = "DTT • Start: " + str.tostring(dtt_startH, "00") + ":" + str.tostring(dtt_startM, "00") + " • TZ: " + dtt_tzNy + "\n" +"Quarter: 6h | Wave: 90m | Beat: 22.5m" if na(dtt_hdr) dtt_hdr := label.new(bar_index, na, hdrTxt, xloc=xloc.bar_index, yloc=yloc.abovebar, textcolor=color.white, color=color.new(color.black, 85), size=size.small, style=label.style_label_left) else label.set_x(dtt_hdr, bar_index) label.set_text(dtt_hdr, hdrTxt)

ترجمه شده از: English
نمایش اصل پیام
نوع سیگنال: خنثی
تایم فریم:
1 روز
قیمت لحظه انتشار:
‎$۰٫۱۷۷۴۷
اشتراک گذاری
نماد برگزیده
برترین تریدر‌
دنبال شده
هشدار