Работа завершена
Время выполнения 2 часа
Отзыв от заказчика
Exceptional! This programmer's brilliance shone through despite my myriad questions. His phenomenal work and patience were unmatched. A true top-notch professional—look no further for expertise!"
Техническое задание
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © BobRivera990
//@version=4
study(title = "Trend Type Indicator by BobRivera990", overlay = false)
//==========================================================================[Inputs]==========================================================================
useAtr = input(true, title = "Use ATR to detect Sideways Movements") // Use Average True Range (ATR) to detect Sideways Movements
atrLen = input(14, minval = 1, title = "ATR Length") // length of the Average True Range (ATR) used to detect Sideways Movements
atrMaType = input("SMA", options = ["SMA", "EMA"],
title = "ATR Moving Average Type") // Type of the moving average of the ATR used to detect Sideways Movements
atrMaLen = input(20, minval = 1, title = "ATR MA Length") // length of the moving average of the ATR used to detect Sideways Movements
useAdx = input(true, title = "Use ADX to detect Sideways Movements") // Use Average Directional Index (ADX) to detect Sideways Movements
adxLen = input(14, minval = 1, maxval = 50, title = "ADX Smoothing") // length of the Average Directional Index (ADX) used to detect Sideways Movements
diLen = input(14, minval = 1, title = "DI Length") // length of the Plus and Minus Directional Indicators (+DI & -DI) used to determine the direction of the trend
adxLim = input(25, minval = 1, title = "ADX Limit") // A level of ADX used as the boundary between Trend Market and Sideways Market
smooth = input(3, minval = 1, maxval = 5, title = "Smoothing Factor") // Factor used for smoothing the oscillator
lag = input(8, minval = 0, maxval = 15, title = "Lag") // lag used to match indicator and chart
//============================================================================================================================================================
//===================================================================[Initial Calculations]===================================================================
atr = atr(atrLen) // Calculate the Average True Range (ATR)
atrMa = atrMaType == "EMA" ? ema(atr, atrMaLen) : sma(atr, atrMaLen) // Calculate the moving average of the ATR
up = change(high) // Calculate parameter related to ADX, +DI and -DI
down = -change(low) // Calculate parameter related to ADX, +DI and -DI
plusDM = na(up) ? na : (up > down and up > 0 ? up : 0) // Calculate parameter related to ADX, +DI and -DI
minusDM = na(down) ? na : (down > up and down > 0 ? down : 0) // Calculate parameter related to ADX, +DI and -DI
trur = rma(tr, diLen) // Calculate parameter related to ADX, +DI and -DI
plus = fixnan(100 * rma(plusDM, diLen) / trur) // Calculate Plus Directional Indicator (+DI)
minus = fixnan(100 * rma(minusDM, diLen) / trur) // Calculate Minus Directional Indicator (-DI)
sum = plus + minus // Calculate parameter related to ADX
adx = 100 * rma(abs(plus - minus) / (sum == 0 ? 1 : sum), adxLen) // Calculate Average Directional Index (ADX)
//============================================================================================================================================================
//========================================================================[Conditions]========================================================================
cndNa = na(atr) or na(adx) or na(plus) or na(minus) or na(atrMaLen) // Conditions for lack of sufficient data for calculations
cndSidwayss1 = useAtr and atr <= atrMa // Sideways Movement condition (based on ATR)
cndSidwayss2 = useAdx and adx <= adxLim // Sideways Movement condition (based on ADX)
cndSidways = cndSidwayss1 or cndSidwayss2 // General Sideways Movement condition
cndUp = plus > minus // uptrend condition
cndDown = minus >= plus // downtrend condition
trendType = cndNa ? na : cndSidways ? 0 : cndUp ? 2 : -2 // Determine the type of trend
smoothType = na(trendType) ? na : round(sma(trendType, smooth) / 2) * 2 // Calculate the smoothed trend type oscillator
//============================================================================================================================================================
//=========================================================================[Drawing]==========================================================================
colGreen30 = color.new(color.green, 30) // Define the color used in the drawings
colGreen90 = color.new(color.green, 90) // Define the color used in the drawings
colGray = color.new(color.gray, 20) // Define the color used in the drawings
colWhite90 = color.new(color.white, 90) // Define the color used in the drawings
colRed30 = color.new(color.red, 30) // Define the color used in the drawings
colRed90 = color.new(color.red, 90) // Define the color used in the drawings
band3 = plot(+3, title = "Band_3", color=color.black) // Draw the upper limit of the uptrend area
band2 = plot(+1, title = "Band_2", color=color.black) // Draw the boundary between Sideways and Uptrend areas
band1 = plot(-1, title = "Band_1", color=color.black) // Draw the boundary between Sideways and Downtrend areas
band0 = plot(-3, title = "Band_0", color=color.black) // Draw the lower limit of the downtrend area
fill(band2, band3, title = "Uptrend area", color = colGreen90) // Highlight the Uptrend area
fill(band1, band2, title = "Sideways area", color = colWhite90) // Highlight the Sideways area
fill(band0, band1, title = "Downtrend area", color = colRed90) // Highlight the Downtrend area
var label lblUp = na
label.delete(lblUp)
lblUp := label.new(x = time, y = 2, text = "UP",
color = color.new(color.green, 100), textcolor = color.black,
style = label.style_label_left, xloc = xloc.bar_time,
yloc = yloc.price, size=size.normal, textalign = text.align_left) // Show Uptrend area label
var label lblSideways = na
label.delete(lblSideways)
lblSideways := label.new(x = time, y = 0, text = "SIDEWAYS",
color = color.new(color.green, 100), textcolor = color.black,
style = label.style_label_left, xloc = xloc.bar_time,
yloc = yloc.price, size = size.normal, textalign = text.align_left) // Show Sideways area label
var label lblDown = na
label.delete(lblDown)
lblDown := label.new(x = time, y = -2, text = "DOWN",
color = color.new(color.green, 100), textcolor = color.black,
style = label.style_label_left, xloc = xloc.bar_time,
yloc = yloc.price, size = size.normal, textalign = text.align_left) // Show Downtrend area label
var label lblCurrentType = na
label.delete(lblCurrentType)
lblCurrentType := label.new(x = time, y = smoothType,
color = color.new(color.blue, 30), style = label.style_label_right,
xloc = xloc.bar_time, yloc = yloc.price, size = size.small) // Show the latest status label
trendCol = smoothType == 2 ? colGreen30 : smoothType == 0 ? colGray : colRed30 // Determine the color of the oscillator in different conditions
plot(smoothType, title = "Trend Type Oscillator", color = trendCol,
linewidth = 3, offset = -lag, style = plot.style_stepline) // Draw the trend type oscillator
Откликнулись
1
Оценка
Проекты
31
32%
Арбитраж
8
50%
/
25%
Просрочено
3
10%
Работает
2
Оценка
Проекты
376
72%
Арбитраж
19
32%
/
47%
Просрочено
14
4%
Работает
Опубликовал: 15 примеров
3
Оценка
Проекты
945
47%
Арбитраж
309
58%
/
27%
Просрочено
125
13%
Свободен
4
Оценка
Проекты
10
10%
Арбитраж
9
0%
/
89%
Просрочено
1
10%
Свободен
Похожие заказы
Create trading robot EA for MT4
200 - 2000 USD
Dear developers I want to create an expert advisor for my strategy. The entry signals quite simple using OHLC, Bollinger, SuperTrend. (Possibly: ICT/FVG) The money and risk management is more difficult using martingale and trailing stops. I also need help to design this before any development
Golden Sniper Pro EA
120+ USD
Welcome to the new era of automation I have something very powerful for trades who are looking to make consistent profits in the industry The EA is called Golden Sniper Pro designed specifically for boom index on Deriv broker with a win rate of over 85%. The ea combines EMA and RSI to detect market direction, calculates SL and TP by ATR. Uses tick counts to avoid entries near spike zones, if there was an entry
Hello, I am looking for someone who can help me to build a MT4/MT5 forex EA, by analyzing the trading history. You are responsible to find out trading logic behind the EA and Build a new EA that accurately replicates the existing strategy. I need someone who has proven previous experience to build a new EA by reverse engineering. Thanks
Risk management EA
30 - 200 USD
Looking to develop risk management EA for personal use probably commercially in the future. I want the EA to have a display panel with 0.1, 0.2, 0.5,1,2,3 percent risk management button. I also want BE, partial closure of 0.25,0.5,0.75 and full closure panel on both profit and loss. I’ll also like to include trailing stop, 2 trades max per day and BE+spread option. I’ll be attaching the image for a guidance on what
Sierra Chart Alerts to MT5 via Webhook (Alert Manager File Version) Objective: Create a Custom Study (ACSIL / C++) that monitors alerts from the Alert Manager file and forwards any valid alert directly to MT5 via an HTTP POST (Webhook) in JSON format. Additional Note: The study should allow adding any modifications in the future and provide clear insights into the alert points in Sierra Chart. 1. Data Flow Diagram
Ea.Mix
30+ USD
I am in need of a good scalping bot for gold or any currency pair. If you have one that is working, reach out. You must be able to provide a trial version so I can test the bot myself
GRID EA with PRUNING
80+ USD
MT5 Expert Advisor Development Project Overview I am looking for an experienced MQL5 developer to build a custom MetaTrader 5 Expert Advisor based on a grid-cycle trading framework. This is not a standard grid EA . The system combines: Session-based trade initiation Multi-filter signal generation Dynamic grid management Advanced basket management State-machine-driven trade lifecycle management Dynamic take-profit
In need of a scalping bot
30+ USD
I am in need of a good scalping bot for gold or any currency pair. If you have one that is working, reach out. You must be able to provide a trial version so I can test the bot myself
US30 Friday Range Breaker Pro
30 - 100 USD
Test instructions: - Run EA on US30 (Dow Jones) - Timeframe: H1 - Test period: last 3–6 months - Use default risk settings (1% per setup) - Check Friday breakout logic only Expected behavior: - EA should mark Friday High/Low - Wait for candle close breakout - Wait for retracement into range - Enter only when H1 candle closes inside range - Execute 2 trades per setup (TP1 = 1R, TP2 = 2R) - Respect 1.5% daily loss
MANAGERS FOR MT4 AND MT5 TRADES
49+ USD
ART 1: NUMBER OF TRADES ALLOWED IN ONE DIRECTION: Maximum number of trades in one direction = ------------------------------ ------------------------------ ------------------------------ -------------- par PART 2 PARTIAL CLOSURE OF STOPLOSS: Total STOPLOSS =------ Pips 1a: Percentage of Stoploss =--% 1b Percentage of Lot size =--% 2a: Percentage oe of Lot size =--% f Stoploss =--% 2b
Информация о проекте
Бюджет
30+ USD
Сроки выполнения
от 1 дн.