Исходный код · ID 3751
melona pressures and ema (by 3dots)_5974369984854366962.txt
Похожие материалы по тегам
ea robofibo source v.11.2.mq4MetaTrader 4 · 1 общих теговᴇɴᴛʀʏ.txtTradingView · 1 общих теговzonestrategy.mqhMetaTrader 5 · 1 общих теговxauusd_simple_strategy7.mq4MetaTrader 4 · 1 общих теговxauusd_grok_presisi_scalper_v1.4 - anti detach.mq5MetaTrader 5 · 1 общих теговxauusd_gold_perfect.mq4MetaTrader 4 · 1 общих тегов
Вы автор или правообладатель?
Сообщите нам, если считаете, что материал размещён без разрешения.
Сообщить о материале
Обращение по товару «melona pressures and ema (by 3dots)_5974369984854366962.txt» отправится на рассмотрение. Укажите контакт для ответа и опишите причину.
Поиск по коду файла
indicator("Melona pressures and ema (by 3dots)" , overlay = true)
averageTrueRange = ta.atr(14)
volatilityDeviation = 2 * ta.stdev(averageTrueRange, 21)
movingAverageATR = ta.sma(averageTrueRange, 21)
upperVolatility = movingAverageATR + volatilityDeviation
lowerVolatility = movingAverageATR - volatilityDeviation
volatilityRatio = (averageTrueRange - lowerVolatility) / (upperVolatility - lowerVolatility)
volatilityPercentage = (40 * volatilityRatio + 30)
showPressure = input.bool(true, title = "Show Single Candle Order Block (Pressure)", group = "Single Candle Order Block Settings")
mitigationStyle = input.string("Close", title = "Mitigation Method", options = ["Close", "Wick"], group = "Single Candle Order Block Settings")
showLast = input.int(10, title = "Show Last X Single Candle Order Blocks", group = "Single Candle Order Block Settings", minval = 1, maxval = 15)
volatilityFilter = input.bool(false, title = "Apply Volatility Filter", group = "Single Candle Order Block Settings",
tooltip ="Enables filtering of Order Blocks based on volatility. When enabled, only Order Blocks with an Average True Range (ATR) above the mean value of the ATR")
bullishScobColor = input.color(color.new(#00FF00, 80), title = "Bullish/Bearish Pressure Block Color", group = "Single Candle Order Block Style Settings", inline = "color")
bearishScobColor = input.color(color.new(#BD10E0, 80), title = " ", group = "Single Candle Order Block Style Settings", inline = "color")
allowOverlap = input.bool(true, title = "Allow Overlapping Pressure Zones", group = "Single Candle Order Block Settings",
tooltip = "When enabled, allows multiple pressure zones to overlap. When disabled, overlapping zones will be rejected.")
showStatusTable = input.bool(true, title = "نمایش جدول وضعیت", group = "تنظیمات جدول")
tablePosition = input.string("top_right", title = "موقعیت جدول", options = ["top_right", "top_left", "bottom_right", "bottom_left"], group = "تنظیمات جدول")
tableTextSize = input.string("small", title = "اندازه متن جدول", options = ["tiny", "small", "normal", "large"], group = "تنظیمات جدول")
isSellnow=false
isBuynow=false
type Pressure
float top
float bottom
int barStart
box block
bool broken
var array<Pressure> bullishScobArray = array.new<Pressure>()
var array<Pressure> bearishScobArray = array.new<Pressure>()
buyPressure=false
sellPressure=false
buyMainob=false
sellMainob=false
var inBullishZone = false
var inBearishZone = false
var bool bullishPressureOnClose = false
var bool bearishPressureOnClose = false
var table statusTable = na
f_getTextSize(textSizeString) =>
switch textSizeString
"tiny" => size.tiny
"small" => size.small
"normal" => size.normal
"large" => size.large
f_getTablePosition(positionString) =>
switch positionString
"top_right" => position.top_right
"top_left" => position.top_left
"bottom_right" => position.bottom_right
"bottom_left" => position.bottom_left
f_check_overlap(array<Pressure> scobArray, float top, float bottom) =>
overlap = false
if scobArray.size() > 1
for i = 0 to array.size(scobArray) - 1
scobElement = array.get(scobArray, i)
if ((top < scobElement.top and top > scobElement.bottom) or (bottom > scobElement.bottom and bottom < scobElement.top))
overlap:= true
overlap
detectBullishSCOB = open[2] > close[2] and close[1] > open[1] and close > open and low[1] < low[2] and close > high[1]
detectBearishSCOB = open[2] < close[2] and close[1] < open[1] and close < open and high[1] > high[2] and close < low[1]
detectBullishOnClose = barstate.isconfirmed and detectBullishSCOB
detectBearishOnClose = barstate.isconfirmed and detectBearishSCOB
atrw = ta.atr(14)
atrFilter = ta.sma(atrw,200)
if barstate.isfirst
bullishPressureOnClose := false
bearishPressureOnClose := false
if showStatusTable
statusTable := table.new(f_getTablePosition(tablePosition), 1, 6, bgcolor = color.new(color.black, 95), border_width = 1,force_overlay = true)
table.cell(statusTable, 0, 0, "Price status", text_color = color.green, bgcolor = color.new(color.gray, 75), text_size = f_getTextSize(tableTextSize))
table.cell(statusTable, 0, 1, "Out of pressures", text_color = color.green, bgcolor = color.new(color.gray, 95), text_size = f_getTextSize(tableTextSize))
if barstate.isconfirmed
bullishPressureOnClose := detectBullishSCOB
bearishPressureOnClose := detectBearishSCOB
if detectBearishSCOB
newScob = Pressure.new(top = high[1], bottom = low[1], barStart = time[1], block = na, broken = false)
buyPressure := false
sellPressure := true
shouldAdd = allowOverlap ? true : not f_check_overlap(bearishScobArray, newScob.top, newScob.bottom)
if shouldAdd
if volatilityFilter and atrw > atrFilter
array.push(bearishScobArray, newScob)
if not volatilityFilter
array.push(bearishScobArray, newScob)
if bearishScobArray.size() > 20
testScob = bearishScobArray.shift()
box.delete(testScob.block)
if detectBullishSCOB
newScob = Pressure.new(top = high[1], bottom = low[1], barStart = time[1], block = na, broken = false)
buyPressure := true
sellPressure := false
shouldAdd = allowOverlap ? true : not f_check_overlap(bullishScobArray, newScob.top, newScob.bottom)
if shouldAdd
if volatilityFilter and atrw > atrFilter
array.push(bullishПоказано первые 50% кода (символов: 8666)
Что вы получите после оплаты
На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.
Зачем нужен email? Адрес передаётся вместе с заказом в магазин и сохраняется для связи заказа с оплатой. Укажите адрес, к которому у вас есть доступ.
Чтобы оформить заказ, введите email и перейдите к оплате.
Стоимость полного кода: 867 ₽ (≈ $10.23 USDT)