İş Gereklilikleri
//+------------------------------------------------------------------+
//| MomentumScalper.mq5 |
//| Copyright 2026, HackerAI |
//| https://hackerai.co |
//+------------------------------------------------------------------+
#property copyright "Copyright 2026, HackerAI"
#property link "https://hackerai.co"
#property version "1.00"
#include <Trade\Trade.mqh>
input int FastEMA = 9;
input int SlowEMA = 21;
input int RSI_Period = 14;
input double LotSize = 0.01;
input int SL_Pips = 100;
input int TP_Pips = 200;
input int MaxSpread = 5;
input int RSI_Overbought = 70;
input int RSI_Oversold = 30;
input bool UseTrailing = true;
input int TrailingStart = 100;
input int TrailingStep = 50;
input int Magic = 12345;
CTrade trade;
int ema_fast, ema_slow, rsi_handle;
double ema_f[3], ema_s[3], rsi[2];
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
ema_fast = iMA(_Symbol, PERIOD_CURRENT, FastEMA, 0, MODE_EMA, PRICE_CLOSE);
ema_slow = iMA(_Symbol, PERIOD_CURRENT, SlowEMA, 0, MODE_EMA, PRICE_CLOSE);
rsi_handle = iRSI(_Symbol, PERIOD_CURRENT, RSI_Period, PRICE_CLOSE);
if(ema_fast == INVALID_HANDLE || ema_slow == INVALID_HANDLE || rsi_handle == INVALID_HANDLE)
{
Print("Indicator init failed");
return INIT_FAILED;
}
trade.SetExpertMagicNumber(Magic);
trade.SetDeviationInPoints(10);
return INIT_SUCCEEDED;
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
IndicatorRelease(ema_fast);
IndicatorRelease(ema_slow);
IndicatorRelease(rsi_handle);
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
if(!IsNewBar()) return;
double spread = (SymbolInfoDouble(_Symbol, SYMBOL_ASK) - SymbolInfoDouble(_Symbol, SYMBOL_BID)) / _Point;
if(spread > MaxSpread) return;
if(CopyBuffer(ema_fast, 0, 0, 3, ema_f) < 3 || CopyBuffer(ema_slow, 0, 0, 3, ema_s) < 3 ||
CopyBuffer(rsi_handle, 0, 0, 2, rsi) < 2) return;
bool buy_signal = (ema_f[1] > ema_s[1] && ema_f[2] <= ema_s[2]) && rsi[1] > 50;
bool sell_signal = (ema_f[1] < ema_s[1] && ema_f[2] >= ema_s[2]) && rsi[1] < 50;
if(buy_signal && PositionsTotal() == 0)
{
double sl = SymbolInfoDouble(_Symbol, SYMBOL_BID) - SL_Pips * _Point;
double tp = SymbolInfoDouble(_Symbol, SYMBOL_ASK) + TP_Pips * _Point;
trade.Buy(LotSize, _Symbol, 0, sl, tp);
}
if(sell_signal && PositionsTotal() == 0)
{
double sl = SymbolInfoDouble(_Symbol, SYMBOL_ASK) + SL_Pips * _Point;
double tp = SymbolInfoDouble(_Symbol, SYMBOL_BID) - TP_Pips * _Point;
trade.Sell(LotSize, _Symbol, 0, sl, tp);
}
if(UseTrailing) TrailingStop();
}
//+------------------------------------------------------------------+
//| Check for new bar |
//+------------------------------------------------------------------+
bool IsNewBar()
{
static datetime last_time = 0;
datetime current_time = iTime(_Symbol, PERIOD_CURRENT, 0);
if(current_time != last_time)
{
last_time = current_time;
return true;
}
return false;
}
//+------------------------------------------------------------------+
//| Trailing stop |
//+------------------------------------------------------------------+
void TrailingStop()
{
for(int i = PositionsTotal() - 1; i >= 0; i--)
{
if(PositionGetSymbol(i) == _Symbol && PositionGetInteger(POSITION_MAGIC) == Magic)
{
double pos_open = PositionGetDouble(POSITION_PRICE_OPEN);
double pos_sl = PositionGetDouble(POSITION_SL);
ENUM_POSITION_TYPE type = (ENUM_POSITION_TYPE)PositionGetInteger(POSITION_TYPE);
if(type == POSITION_TYPE_BUY)
{
double new_sl = SymbolInfoDouble(_Symbol, SYMBOL_BID) - TrailingStart * _Point;
if(new_sl > pos_sl + TrailingStep * _Point)
trade.PositionModify(_Symbol, new_sl, PositionGetDouble(POSITION_TP));
}
else
{
double new_sl = SymbolInfoDouble(_Symbol, SYMBOL_ASK) + TrailingStart * _Point;
if(new_sl < pos_sl - TrailingStep * _Point || pos_sl == 0)
trade.PositionModify(_Symbol, new_sl, PositionGetDouble(POSITION_TP));
}
}
}
}
Yanıtlandı
1
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
2
Derecelendirme
Projeler
22
9%
Arabuluculuk
6
33%
/
50%
Süresi dolmuş
1
5%
Çalışıyor
3
Derecelendirme
Projeler
0
0%
Arabuluculuk
0
Süresi dolmuş
0
Serbest
Benzer siparişler
Yemen sanaa
30+ USD
Sergey Golubev: Nick Rypock Trailing Reverse ( NRTR ) The forum Key thread Basic explanation/the theory - the post Second version of AscTrend system - asctrend indicator together with NRTR indicator NRTR_color_line indicator for MT5 - the post First version of AsctrendND EA - This EA use Asctrend indicator as main signal and Nrtr indicator as filter: - How to install . - optimization results for M15 timeframe for
I’ve been following your profile and I'm interested in your expertise with the ATAS API and C# development. I have a clear technical scope for a high-performance M1 indicator focused on Binary Options and Scalping. The core logic is based on institutional Order Flow convergence: Stacked Imbalances: 300% ratio with a minimum of 3 consecutive levels. Delta/Price Divergence: Filtering for market exhaustion (New Highs
Hello, I’m looking for an experienced MQL4/MQL5 developer to work with me on an ongoing basis. My clients request services such as: Converting TradingView Pine Script indicators/strategies into MT4 or MT5 Expert Advisors Converting MT4 EAs to MT5 (and MT5 to MT4) Compiling and fixing existing MQL4 / MQL5 EA code Adding simple features like alerts, SL/TP, lot size, and basic money management This job is for
EA developer with stregegy builder required
50 - 100 USD
Looking for an experienced MQL5 developer to design and develop a custom Expert Advisor (EA) for MetaTrader 5. The purpose of this EA is not just automated trading, but also to help me better structure, test, and refine my personal trading strategy
Freeallfree
400 - 800 USD
Professional MT5 EA – XAUUSD I need a professional Expert Advisor for MT5 (MQL5) to trade XAUUSD only. This is not a random scalping bot. The EA must trade only high-probability liquidity breakouts during active sessions and avoid ranging or low-volatility markets. Symbol: XAUUSD Timeframe: M15 (optional H1 confirmation) Session filter (Dubai GMT+4): Trade only London and New York sessions Adjustable session times No
Data Integrity
500 - 1000 USD
The trading bot is an automated software system designed to monitor financial markets, execute trades, and manage risk based on predefined strategies. The bot aims to maximize profits while minimizing human intervention and emotional decision-making. Scope: Supports automated trading on selected exchanges (e.g., Binance, Bitget, Coinbase). Executes trades based on technical indicators, signals, or AI models. Provides
1. General Objective Development of an Expert Advisor in MQL5 intended for Futures markets , based on an existing trading strategy that I will provide (described logic or precise rules). The main objectives are: Faithful implementation of the strategy , Full debugging of the EA, Validation of correct behavior through backtesting. 2. Markets and Instruments Markets: Futures Symbols: to be defined (e.g. indices
I need help in modifying an amibroker AFL indicator the indicator already works but I need per symbol static variable isolation, parameters persistence per symbol after restart, non declining trailing stop logic, parameter auto restore when switching symbols and a global reset function for static variables. For better understanding As discussed, this is the official offer for restructuring my RAD Chandelier stop loss
Hello there Hpe you are doing good I am in search of a pine script expert developer who can build strategy in apudFlow in pinescript. Kinldy bid on this project if you can do this
I need editing of EA
30+ USD
Am looking for am experience Programmer who can Edit and compile 2 Ea"s that i built with the help of CHATGPT. I need the job to be done within one day and I will prove the source code
Proje bilgisi
Bütçe
30+ USD
Müşteri
Verilmiş siparişler1
Arabuluculuk sayısı0