I have this indicator that I use for my strategy and I want make it into an EA
/@version=5
indicator("Swing High/Low with Horizontal Lines", overlay=true)
// Inputs
barsback = input(2, title='Bars back to check for a swing')
futureBars = input(10, title='Number of future bars for horizontal line')
showSwings = input.string("Both", title="Show Swings", options=["Both", "Highs", "Lows"])
maxSwings = input.int(5, title="Maximum number of swings to show", minval=1)
// Function to detect swing highs and lows
swing_detection(index) =>
swing_high = true
swing_low = true
for i = 1 to barsback
if high[index - i] >= high[index] or high[index + i] > high[index]
swing_high := false
if low[index - i] <= low[index] or low[index + i] < low[index]
swing_low := false
[swing_high, swing_low]
// Detect swings for the current bar
[swing_high, swing_low] = swing_detection(barsback)
// Initialize arrays for swing lines and their end bars
var line[] swingHighLines = array.new_line()
var int[] swingHighEndBars = array.new_int()
var line[] swingLowLines = array.new_line()
var int[] swingLowEndBars = array.new_int()
// Function to draw lines
draw_line(lineArray, endBarArray, index, price, color) =>
if array.size(lineArray) >= maxSwings
line.delete(array.shift(lineArray))
array.shift(endBarArray)
newLine = line.new(x1=bar_index - index, y1=price, x2=bar_index - index + futureBars, y2=price, color=color, width=2)
array.push(lineArray, newLine)
array.push(endBarArray, bar_index + futureBars)
// Check if the line should be extended or stopped
update_lines(lineArray, endBarArray) =>
for i = 0 to array.size(lineArray) - 1
lineId = array.get(lineArray, i)
endBar = array.get(endBarArray, i)
price = line.get_y1(lineId)
if bar_index <= endBar
if high >= price and low <= price
array.set(endBarArray, i, bar_index)
line.set_x2(lineId, bar_index)
line.set_extend(lineId, extend.none)
// Conditionally draw swing highs and lows based on user selection and maximum number of swings
if (showSwings == "Both" or showSwings == "Highs") and swing_high
draw_line(swingHighLines, swingHighEndBars, barsback, high[barsback], color.red)
if (showSwings == "Both" or showSwings == "Lows") and swing_low
draw_line(swingLowLines, swingLowEndBars, barsback, low[barsback], color.green)
// Update lines to stop extending when crossed
if showSwings == "Both" or showSwings == "Highs"
update_lines(swingHighLines, swingHighEndBars)
if showSwings == "Both" or showSwings == "Lows"
update_lines(swingLowLines, swingLowEndBars)
Identify swings using the above indicator way of identifying them
Compare two charts (Allow me to choose which charts + allow me to use the time frame) (time frame should be in the same for both of them)
Mark the common swings (Common swing is a swing that has formed on both choose charts within the same candle on the selected time frame
Once one of the common swings broken on only 1 chart and not on the other (That is called Obba) set a stop order on the pair that hasn’t broken the common swing
For example
Pair 1 broke the common swing high but pair 2 didn’t, then Set stop order on pair 2 on the low of the last formed candle, set SL on the common swing
Set Tp 2.5RR
If the common swing is broken before order activation then cancel the order
If the order is not activated and new candle formed and the common swing still not broken then cancel the order and set it again on the low of the last formed candle
When price reaches 1.5RR move stop loss to breakeven and close 0.25% of the open lot size
Only 1 trade per pair a time (you can enter for the other pair) unless the open trade is on breakeven
Maximum loses per day ( variable)
Maximum Tp ( variable)
Chosen Risk in percentage from the equity capital ( variable)
類似した注文
ثبت طلبك في مواصفات البوت الثاني كذا: الجودة والأمان أهم من السعر، وما يدخل إلا إذا الفرصة قوية، مع حماية عند الخسائر وانقطاع الاتصال وارتفاع السبريد، وتشغيل مستمر على سيرفر، مع اختبارات إلزامية قبل أي تشغيل حقيقي. بهذه الصيغة يصير يشتغل وأنت مرتاح بالِك، لكنه يوقف تلقائيًا وقت عطلة السوق أو أي خلل. بس أكون واضح معك: ما في بوت يضمن عدم الخسارة، خصوصًا بالمضاربات السريعة، هدفنا نقلل المخاطر ونمنع الخسائر غير المنضبطة
My MQL5 Expert Advisor wins most trades with small profits, then suddenly takes one large loss that wipes out weeks of gains. This is the "picking up pennies in front of a steamroller" pattern. Required fix: Find the exact cause of the large losses in the code. Cap the loss on every trade with a fixed stop loss (no martingale or averaging down). Stop trading in dangerous conditions (high volatility, strong trends
//+------------------------------------------------------------------+ //| Durban Gold Hunter.mq5 (v3.00) | //| Multi-pair EA for MetaTrader 5 (Razor Markets, XM). | //| Strategy modules (each can be switched on/off): | //| 1. EMA crossover | //| 2. 714 method (EMA 7 + RSI 14) | //| 3. CRT (Candle Range Theory: range sweep and close back inside)| //| 4. Trend line breakout (auto-drawn from swing highs/lows) | //| 5
I want NinjaTrader to behave like Tradovate. When I hover over a candlestick, the cursor should automatically snap to the center of that candle across all open charts. For example, when I hover over a 30-minute candle, the cursor should align with the center of the corresponding candles on the 15-minute and other chart timeframes. I also want vertical lines drawn on one chart to automatically align with the center of
Hello, I already have an MT5 Expert Advisor for XAUUSD based on Fibonacci, market structure, BOS/CHoCH and swing trading. I need an experienced MQL5 developer to modify my existing EA, not develop a completely new one. Required modifications: Partial take-profit system with multiple TP levels. Keep profit targets conservative, using Fibonacci extension levels. Stop-loss placement beyond liquidity areas, not exactly
Hello, I am an independent developer selling an Expert Advisor (EA) on the MQL5 Market. I am looking for an experienced Forex affiliate marketing company or professional marketer to promote my existing MT5 trading robot to customers worldwide. My proposed partnership offers a 35% commission per verified sale, with the possibility of a long-term collaboration. I would like to know: Do you promote third-party MT5
The objective is to develop a custom technical indicator for MetaTrader 5 (MQL5) that replicates the exact visual structure, inputs, and features of the "AYN-Indicator by Snurk" as shown in the provided screenshot. The indicator must analyze price actions based on a flexible lookback period, plot dynamic trend filters, and render precise Buy/Sell breakout labels without any lagging or repainting
Requirements Specification: Debug & Error Fixing: Review the entire source code of the MQL expert advisor. Identify and fix all logical errors, bugs, and performance issues that cause trades to close prematurely or yield extremely low profits. Strategy Restructuring & Optimization: Fully analyze and optimize the current entry and exit strategy for USDJPY and GBPUSD. Modify, upgrade, or completely rewrite the entry
I am looking for an MQL5 developer to independently review an existing EA’s execution and position management logic. The review should focus on duplicate orders, trade isolation by symbol and magic number, broker price and volume constraints, error handling, and recovery after a terminal restart. This order is for an audit report. Please do not modify the source or change the trading strategy. For each finding
Title: Fully Automatic MT5 Trading Bot (Expert Advisor) with Risk Management I want a fully automated trading robot (Expert Advisor) for MetaTrader 5, written in MQL5. The bot must automatically analyse market data, identify trading opportunities, execute BUY and SELL orders, manage open positions, and close trades according to predefined rules without requiring manual confirmation for each trade. Requirements