Работа завершена

Время выполнения 3 часа
Отзыв от исполнителя
Thank you for an interesting task! Wish you all the best!
Отзыв от заказчика
The task was done correctly, professionally and on time. Fixed bugs in the code I had him fix for me. All recommendations.

Техническое задание

Hello everyone,

I need help debugging and fixing a MetaTrader 5 Expert Advisor (EA). The file compiles with several errors in MetaEditor, mostly "undeclared identifier" and "some operator expected".

I’m learning step-by-step and building this EA gradually, so I would really appreciate if someone could review it and tell me what is wrong in the syntax.

I use these codes for a demo account to test my strategy. If someone can review the codes and fix them, I would be very grateful.



wrong parameters count STEP2.mq5 274 15

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 274 15

wrong parameters count STEP2.mq5 290 16

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 290 16

possible use of uninitialized variable 'eq' STEP2.mq5 291 8

undeclared identifier STEP2.mq5 306 16

'StringSubstr' - some operator expected STEP2.mq5 306 28

implicit conversion from 'unknown' to 'string' STEP2.mq5 306 16

wrong parameters count STEP2.mq5 201 14

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 201 14

possible use of uninitialized variable 'eq' STEP2.mq5 202 37

wrong parameters count STEP2.mq5 206 14

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 206 14

possible use of uninitialized variable 'eq' STEP2.mq5 207 22

wrong parameters count STEP2.mq5 224 5

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 224 5

wrong parameters count STEP2.mq5 229 14

   built-in: double AccountInfoDouble(ENUM_ACCOUNT_INFO_DOUBLE) STEP2.mq5 229 14

possible use of uninitialized variable 'eq' STEP2.mq5 231 31

8 errors, 5 warnings 8 5





goldfxsafebot code
//+------------------------------------------------------------------+
//| GoldFX_SafeBot.mq5|
//| DEMO/EDU EA: EMA(9/21/200) + RSI(14) + MACD(12,26,9) |
//| Risk mgmt: 1%/trade, max 3% total, daily stop -2% |
//| Protections: ATR filter + vol-halt, Smart TP trailing, BE, |
//| Friday cutoff 18:00, force-close 21:55, symbol windows |
//| NOTE: Testiraj na DEMO. Ti odlučuješ da li i kada ide na LIVE. |
//+------------------------------------------------------------------+
#property copyright "For demo/education"
#property version "1.0"
#проперти стриц


т

#include
CTrade trade;

//============================== INPUTS ==============================
input string __A__ = "----- Risk i limiti -----";
input double RiskPercentPerTrade = 1.0; // % equity po trejdu
input double MaxTotalOpenRiskPercent = 3.0; // % equity ukupni rizik otvorenih pozicija
input double DailyLossStopPercent = 2.0; // -2% dnevni stop
input int MaxConsecutiveLosses = 4; // pauza 24h nakon X gubitaka zaredom

input string __B__ = "----- TP/SL zaštite -----";
input double MinRiskReward = 2.0; // TP = RR * SL (start)
input bool UseSmartTP = true; // trailing po % od MFE
input double SmartTP_TrailingPercent = 5.0; // zatvori ako profit padne >5% od vrha
input double BreakevenBufferCurrency = 5.0; // prebaci SL iznad nule kad profit > 5 EUR

input string __C__ = "----- Izvršenje / spread -----";
input bool UseMaxSlippage = true;
input int MaxSlippagePoints = 20; // 2.0 pips = 20 pts na 5-digit
input int MaxPositionsPerSymbol = 1; // 1 pozicija po simbolu (preporučeno)

input string __D__ = "----- Equity/DD zaštita -----";
input bool UseEquityProtection = true; // lokalni peak-based equity stop
input double EquityProtectionPercent = 10.0; // pauza 24h ako eq padne >10% od vrha

input string __E__ = "----- Volatilnost (ATR) -----";
input bool UseATRFilterGlobal = true;
input int ATR_Period = 14;
input double ATR_MultipleHalt = 2.5; // ako je ATR >= 2.5x SMA(ATR) -> pauza
input int VolHaltPauseMinutes = 30; // minuta pauze nakon vol-halt

input string __F__ = "----- Vremenski prozori -----";
input bool UseTradingWindows = true;
input int DefaultStartHour = 8; // CET
input int DefaultEndHour = 22; // CET

input string __G__ = "----- Petak sigurnosno -----";
input int FridayCutoffHour = 18; // nema novih ulaza posle 18:00
input int FridayForceCloseHour = 21; // zatvaranje do 21:55
input int FridayForceCloseMinute = 55;

input string __H__ = "----- Indikatori -----";
input int EMA_Fast = 9;
input int EMA_Slow = 21;
input int EMA_Trend = 200;
input int RSI_Period = 14;
input int RSI_BuyLevel = 50; // koristimo centerline (50)
input int RSI_SellLevel = 50;
input int MACD_Fast = 12;
input int MACD_Slow = 26;
input int MACD_Signal = 9;

input string __I__ = "----- Simboli (lista, zarez) -----";
input string Symbols = "XAUUSD,EURUSD,GBPUSD,USDJPY";

input string __J__ = "----- Po-simbolu pragovi -----";
// XAUUSD
input ENUM_TIMEFRAMES XAU_TF = PERIOD_M15;
input double XAU_ATR_Min = 0.60; // minimalni ATR u USD
input int XAU_MaxSpreadPoints = 40; // ~0.40 na 3-digit
input int XAU_Start = 8, XAU_End = 22;
// EURUSD
input ENUM_TIMEFRAMES EU_TF = PERIOD_M15;
input double EU_ATR_MinPips = 10;
input int EU_MaxSpreadPoints = 20;
input int EU_Start = 8, EU_End = 22;
// GBPUSD
input ENUM_TIMEFRAMES GU_TF = PERIOD_M15;
input double GU_ATR_MinPips = 14;
input int GU_MaxSpreadPoints = 30;
input int GU_Start = 9, GU_End = 18;
// USDJPY
input ENUM_TIMEFRAMES UJ_TF = PERIOD_M15;
input double UJ_ATR_MinPips = 12;
input int UJ_MaxSpreadPoints = 20;
input int UJ_Start = 1, UJ_End = 12;

//=========================== STATE VARS =============================
datetime g_pauseUntil = 0, g_volHaltUntil = 0;
double g_equityPeak = 0, g_dayStartEquity = 0;
int g_lastYMD = -1, g_consecLosses = 0;

//=========================== HELPERS ================================
int HourNow(){ MqlDateTime t; TimeToStruct(TimeCurrent(), t); return t.hour; }
int MinNow(){ MqlDateTime t; TimeToStruct(TimeCurrent(), t); return t.min; }
int WDayNow(){ MqlDateTime t; TimeToStruct(TimeCurrent(), t); return t.day_of_week; }
int YMD(){ MqlDateTime t; TimeToStruct(TimeCurrent(), t); return (t.year*10000 + t.mon*100 + t.day); }

bool InWindow(const string s){
if(!UseTradingWindows) return true;
int h=HourNow();
if(s=="XAUUSD") return (h>=XAU_Start && h if(s=="EURUSD") return (h>=EU_Start && h if(s=="GBPUSD") return (h>=GU_Start && h if(s=="USDJPY") return (h>=UJ_Start && h return (h>=DefaultStartHour && h }
bool FridayNoNew() { return (WDayNow()==5 && HourNow()>=FridayCutoffHour); }
bool FridayForceClose(){ if(WDayNow()!=5) return false; int h=HourNow(), m=MinNow(); return (h>FridayForceCloseHour || (h==FridayForceCloseHour && m>=FridayForceCloseMinute)); }

bool SpreadOK(const string s){
int limit=50;
if(s=="XAUUSD") limit=XAU_MaxSpreadPoints;
else if(s=="EURUSD") limit=EU_MaxSpreadPoints;
else if(s=="GBPUSD") limit=GU_MaxSpreadPoints;
else if(s=="USDJPY") limit=UJ_MaxSpreadPoints;
return ( (int)SymbolInfoInteger(s, SYMBOL_SPREAD) <= limit );
}

double ATR(const string s, ENUM_TIMEFRAMES tf, const int period){
int h=iATR(s, tf, period); if(h==INVALID_HANDLE) return 0;
double b[]; if(CopyBuffer(h,0,0,1,b) }

bool ATR_OK(const string s){
ENUM_TIMEFRAMES tf=PERIOD_M15; double minNeed=0;
if(s=="XAUUSD"){ tf=XAU_TF; minNeed=XAU_ATR_Min; }
else if(s=="EURUSD"){ tf=EU_TF; minNeed=EU_ATR_MinPips*_Point; }
else if(s=="GBPUSD"){ tf=GU_TF; minNeed=GU_ATR_MinPips*_Point; }
else if(s=="USDJPY"){ tf=UJ_TF; minNeed=UJ_ATR_MinPips*_Point; }
double a=ATR(s, tf, ATR_Period);
if(a<=minNeed) return false;

// volatility halt: ATR / SMA(ATR) >= ATR_MultipleHalt
if(UseATRFilterGlobal){
int h=iATR(s, tf, ATR_Period); double arr[30];
if(h!=INVALID_HANDLE && CopyBuffer(h,0,0,30,arr)==30){
double sma=0; for(int i=1;i if(sma>0.0 && arr[0]/sma >= ATR_MultipleHalt){
g_volHaltUntil = TimeCurrent() + VolHaltPauseMinutes*60;
return false;
}
}
if(TimeCurrent() < g_volHaltUntil) return false;
}
return true;
}

bool IndicatorsSignal(const string s, int &dir){
// TF po simbolu
ENUM_TIMEFRAMES tf=PERIOD_M15;
if(s=="XAUUSD") tf=XAU_TF; else if(s=="EURUSD") tf=EU_TF; else if(s=="GBPUSD") tf=GU_TF; else if(s=="USDJPY") tf=UJ_TF;

// EMA
int hF=iMA(s,tf,EMA_Fast,0,MODE_EMA,PRICE_CLOSE);
int hS=iMA(s,tf,EMA_Slow,0,MODE_EMA,PRICE_CLOSE);
int hT=iMA(s,tf,EMA_Trend,0,MODE_EMA,PRICE_CLOSE);
double eF[1],eS[1],eT[1];
if(CopyBuffer(hF,0,0,1,eF)
// RSI
int hR=iRSI(s,tf,RSI_Period,PRICE_CLOSE); double r[1];
if(CopyBuffer(hR,0,0,1,r)
// MACD histogram
int hM=iMACD(s,tf,MACD_Fast,MACD_Slow,MACD_Signal,PRICE_CLOSE); double hist[1];
if(CopyBuffer(hM,2,0,1,hist)
// trenutna cena (srednja)
double bid,ask; SymbolInfoDouble(s,SYMBOL_BID,bid); SymbolInfoDouble(s,SYMBOL_ASK,ask); double price=(bid+ask)/2.0;

bool bull = (eF[0]>eS[0] && price>eT[0] && r[0]>=RSI_BuyLevel && hist[0]>0);
bool bear = (eF[0]
dir = bull? 1 : (bear? -1 : 0);
return (dir!=0);
}

double TotalOpenRiskCurrency(){
double tot=0;
for(int i=0;i ulong t=PositionGetTicket(i); if(!PositionSelectByTicket(t)) continue;
string s=PositionGetString(POSITION_SYMBOL);
double vol=PositionGetDouble(POSITION_VOLUME);
double sl =PositionGetDouble(POSITION_SL);
double po =PositionGetDouble(POSITION_PRICE_OPEN);
long tp =(long)PositionGetInteger(POSITION_TYPE);
double tv; SymbolInfoDouble(s,SYMBOL_TRADE_TICK_VALUE,tv);
double ts; SymbolInfoDouble(s,SYMBOL_TRADE_TICK_SIZE,ts);
if(sl<=0||tv<=0||ts<=0) continue;
double dist=(tp==POSITION_TYPE_BUY)? (po-sl):(sl-po);
if(dist<=0) continue;
double money_per_point = tv/(ts/_Point);
tot += (dist/_Point)*money_per_point*vol;
}
return tot;
}
bool CanOpenMoreRisk(){
double eq; AccountInfoDouble(ACCOUNT_EQUITY,eq);
return TotalOpenRiskCurrency() < (eq*MaxTotalOpenRiskPercent/100.0)*0.98;
}

double LotForRisk(const string s, const double sl_points){
double eq; AccountInfoDouble(ACCOUNT_EQUITY,eq);
double riskMoney = eq*RiskPercentPerTrade/100.0;
double tv; SymbolInfoDouble(s,SYMBOL_TRADE_TICK_VALUE,tv);
double ts; SymbolInfoDouble(s,SYMBOL_TRADE_TICK_SIZE,ts);
if(sl_points<=0||tv<=0||ts<=0) return 0;
double money_per_point = tv/(ts/_Point);
double vol = riskMoney/(sl_points*money_per_point);
double step; SymbolInfoDouble(s,SYMBOL_VOLUME_STEP,step);
double minl; SymbolInfoDouble(s,SYMBOL_VOLUME_MIN,minl);
double maxl; SymbolInfoDouble(s,SYMBOL_VOLUME_MAX,maxl);
vol = MathMax(minl, MathMin(maxl, MathFloor(vol/step)*step));
return vol;
}

void UpdateDay(){
int ymd=YMD();
if(ymd!=g_lastYMD){
g_lastYMD=ymd;
AccountInfoDouble(ACCOUNT_EQUITY,g_dayStartEquity);
// reset serije na početku dana (ako želiš strože: ostavi g_consecLosses)
}
}
bool DailyStop(){
double eq; AccountInfoDouble(ACCOUNT_EQUITY,eq);
if(g_dayStartEquity<=0) return false;
double dd=(g_dayStartEquity-eq)/g_dayStartEquity*100.0;
return (dd>=DailyLossStopPercent);
}

void ManagePositions(){
for(int i=PositionsTotal()-1;i>=0;i--){
ulong t=PositionGetTicket(i); if(!PositionSelectByTicket(t)) continue;
string s=PositionGetString(POSITION_SYMBOL);
long type=(long)PositionGetInteger(POSITION_TYPE);
double open=PositionGetDouble(POSITION_PRICE_OPEN);
double sl =PositionGetDouble(POSITION_SL);
double profit=PositionGetDouble(POSITION_PROFIT);

// Breakeven (jednostavan buffer)
if(profit > BreakevenBufferCurrency && sl>0){
double newSL = (type==POSITION_TYPE_BUY)? open + 10*_Point : open - 10*_Point; // simboličan BE > 0
if( (type==POSITION_TYPE_BUY && newSL>sl) || (type==POSITION_TYPE_SELL && newSL trade.PositionModify(s, newSL, PositionGetDouble(POSITION_TP));
}
// Smart TP: trailing po % pada od MFE
if(UseSmartTP){
string key="MFE_"+(string)t;
double mfe = GlobalVariableCheck(key)? GlobalVariableGet(key) : 0;
if(profit>mfe) GlobalVariableSet(key,profit);
else{
double peak = GlobalVariableGet(key);
if(peak>0 && profit < peak*(1.0 - SmartTP_TrailingPercent/100.0)){
trade.PositionClose(s);
}
}
}
}
}

void CloseAll(const string reason){
for(int i=PositionsTotal()-1;i>=0;i--){
ulong t=PositionGetTicket(i); if(!PositionSelectByTicket(t)) continue;
trade.PositionClose( PositionGetString(POSITION_SYMBOL) );
}
Print("CloseAll: ", reason);
}

//=========================== EVENTS =================================
int OnInit(){ AccountInfoDouble(ACCOUNT_EQUITY,g_equityPeak); return(INIT_SUCCEEDED); }
void OnDeinit(const int r){}

void OnTick(){
UpdateDay();
ManagePositions();

// Petak force-close
if(FridayForceClose()){ CloseAll("Friday force close"); return; }

// Pauze i dnevni stop
if(TimeCurrent() if(DailyStop()){ g_pauseUntil = TimeCurrent() + 24*60*60; return; }

// Equity protection (peak-based)
if(UseEquityProtection){
double eq; AccountInfoDouble(ACCOUNT_EQUITY,eq);
if(eq>g_equityPeak) g_equityPeak=eq;
if(g_equityPeak>0 && (g_equityPeak-eq)/g_equityPeak*100.0 >= EquityProtectionPercent){
CloseAll("Equity protection");
g_pauseUntil = TimeCurrent() + 24*60*60;
return;
}
}

// Posle cutoff-a petkom nema novih ulaza
if(FridayNoNew()) return;

// Skener simbola
string list=Symbols; int p=0;
while(p int q = StringFind(list,",",p); if(q==-1) q=StringLen(list);
string s = StringTrim( StringSubstr(list,p,q-p) ); p=q+1;
if(s=="") continue;

// ograničenja
if(!InWindow(s)) continue;
if(!SpreadOK(s)) continue;
if(!ATR_OK(s)) continue;
if(!CanOpenMoreRisk()) continue;

// ograniči broj pozicija po simbolu
int cntSym=0;
for(int i=0;i ulong tk=PositionGetTicket(i); if(!PositionSelectByTicket(tk)) continue;
if(PositionGetString(POSITION_SYMBOL)==s) cntSym++;
}
if(cntSym>=MaxPositionsPerSymbol) continue;

// ulazni signal
int dir=0; if(!IndicatorsSignal(s,dir)) continue;

// SL = 2*ATR; TP = RR*SL
ENUM_TIMEFRAMES tf=PERIOD_M15;
if(s=="XAUUSD") tf=XAU_TF; else if(s=="EURUSD") tf=EU_TF; else if(s=="GBPUSD") tf=GU_TF; else if(s=="USDJPY") tf=UJ_TF;
double a = ATR(s, tf, ATR_Period);
double sl_pts = (a>0? 2.0*(a/_Point) : 200.0);

double bid,ask; SymbolInfoDouble(s,SYMBOL_BID,bid); SymbolInfoDouble(s,SYMBOL_ASK,ask);
double price = (dir>0)? ask : bid;
double sl = (dir>0)? price - sl_pts*_Point : price + sl_pts*_Point;
double tp = (dir>0)? price + sl_pts*MinRiskReward*_Point : price - sl_pts*MinRiskReward*_Point;

double lot = LotForRisk(s, sl_pts);
if(lot<=0) continue;

trade.SetDeviationInPoints( UseMaxSlippage? MaxSlippagePoints: 100 );
bool ok = (dir>0)? trade.Buy(lot,s,price,sl,tp) : trade.Sell(lot,s,price,sl,tp);
if(ok) Print("Opened ", (dir>0?"BUY ":"SELL "), s, " lot=", DoubleToString(lot,2));
}
}

void OnTradeTransaction(const MqlTradeTransaction& trans,const MqlTradeRequest& req,const MqlTradeResult& res){
if(trans.type==TRADE_TRANSACTION_DEAL_ADD){
long dt = (long)HistoryDealGetInteger(trans.deal, DEAL_TYPE);
double pf = HistoryDealGetDouble(trans.deal, DEAL_PROFIT);
if(dt==DEAL_TYPE_BUY || dt==DEAL_TYPE_SELL){
if(pf g_consecLosses++;
if(g_consecLosses>=MaxConsecutiveLosses){
g_pauseUntil = TimeCurrent() + 24*60*60; // pauza 24h
g_consecLosses = 0; // reset streak
Print("Pause due to max consecutive losses reached.");
}
}else{
g_consecLosses=0;
}
}
}
}
//+------------------------------------------------------------------+


eamultysimbol bot code
RiskPercentPerTrade=1.0
MaxTotalOpenRiskPercent=3.0
DailyLossStopPercent=2.0
MaxConsecutiveLosses=4
MinRiskReward=2.0
UseSmartTP=true
SmartTP_TrailingPercent=5.0
BreakevenBufferCurrency=5.0
UseMaxSlippage=true
MaxSlippagePoints=20
MaxPositionsPerSymbol=1
UseEquityProtection=true
EquityProtectionPercent=10.0
UseATRFilterGlobal=true
ATR_Period=14
ATR_MultipleHalt=2.5
VolHaltPauseMinutes=30
UseTradingWindows=true
DefaultStartHour=8
DefaultEndHour=22
FridayCutoffHour=18
FridayForceCloseHour=21
FridayForceCloseMinute=55
EMA_Fast=9
EMA_Slow=21
EMA_Trend=200
RSI_Period=14
RSI_BuyLevel=50
RSI_SellLevel=50
MACD_Fast=12
MACD_Slow=26
MACD_Signal=9
Symbols=XAUUSD,EURUSD,GBPUSD,USDJPY
XAU_TF=PERIOD_M15
XAU_ATR_Min=0.60
XAU_MaxSpreadPoints=40
XAU_Start=8
XAU_End=22
EU_TF=PERIOD_M15
EU_ATR_MinPips=10
EU_MaxSpreadPoints=20
EU_Start=8
EU_End=22
GU_TF=PERIOD_M15
GU_ATR_MinPips=14
GU_MaxSpreadPoints=30
GU_Start=9
GU_End=18
UJ_TF=PERIOD_M15
UJ_ATR_MinPips=12
UJ_MaxSpreadPoints=20
UJ_Start=1
UJ_End=12

Откликнулись

1
Разработчик 1
Оценка
(16)
Проекты
19
11%
Арбитраж
4
25% / 50%
Просрочено
1
5%
Работает
2
Разработчик 2
Оценка
(6)
Проекты
8
0%
Арбитраж
2
0% / 100%
Просрочено
0
Свободен
3
Разработчик 3
Оценка
(47)
Проекты
66
38%
Арбитраж
5
20% / 40%
Просрочено
1
2%
Работает
4
Разработчик 4
Оценка
(26)
Проекты
29
41%
Арбитраж
1
100% / 0%
Просрочено
3
10%
Свободен
5
Разработчик 5
Оценка
(14)
Проекты
14
21%
Арбитраж
0
Просрочено
0
Свободен
6
Разработчик 6
Оценка
(3)
Проекты
3
33%
Арбитраж
0
Просрочено
0
Работает
7
Разработчик 7
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
8
Разработчик 8
Оценка
(1)
Проекты
3
0%
Арбитраж
0
Просрочено
0
Свободен
9
Разработчик 9
Оценка
(2)
Проекты
0
0%
Арбитраж
5
0% / 60%
Просрочено
0
Свободен
10
Разработчик 10
Оценка
(13)
Проекты
16
6%
Арбитраж
8
38% / 38%
Просрочено
2
13%
Загружен
11
Разработчик 11
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
12
Разработчик 12
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
13
Разработчик 13
Оценка
(14)
Проекты
17
18%
Арбитраж
2
0% / 100%
Просрочено
3
18%
Свободен
14
Разработчик 14
Оценка
(5)
Проекты
4
0%
Арбитраж
2
50% / 50%
Просрочено
2
50%
Свободен
15
Разработчик 15
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
16
Разработчик 16
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
17
Разработчик 17
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
18
Разработчик 18
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
19
Разработчик 19
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
20
Разработчик 20
Оценка
(175)
Проекты
225
20%
Арбитраж
19
42% / 16%
Просрочено
0
Загружен
21
Разработчик 21
Оценка
Проекты
0
0%
Арбитраж
0
Просрочено
0
Свободен
Похожие заказы
Acquire existing profitable Expert Advisor with source code for client investment portfolio - Full .mq5 code (clean & commented) - 4+ years backtest (Jan 2022 - Dec 2025, 100% tick data) - ~10% monthly return - Max DD ≤15% - No grid/martingale (strictly enforced) - 1-month forward test required - Send trade history + EA details for review - Demo EA file needed for backtest replication - Open to any currency
i need the multi-chain dex bot with set up and installation i need you to help me set the copy reading wallet on binance or phantom with capital for 100 Euro to 1 Million in one year
Greetings, I'm seeking a price quote for the following EA description. 1) Short positions are opened after trades that have closed below the open of the trade. 2) Long positions are opened after trades that have closed above the open of the trade. 3) The base lot size plus the spread is applied for every trade that opens after the take profit has been reached. 4) Double the lot size of the previous trade plus
I have an issue with my ninja script and i would like you to help me straighten things I wanted to create an indicator and i have the source code already but i am getting compiling errors on my NinjaTrader And i tried fixing the error it still same I sent 3 images here for you to understand the errors and i would like to ask if you can help me fix it so i can go ahead and compile my source code. Thanks
Good day, I would like to build an automated trading system for Ninjatrader using 2 MACD, a Supertrend, and a moving average indicator. I want the option to adjust the indicator settings, the ability to trade at three different times, and the option to receive alerts. I want to get an idea of what that will cost me. It will enter trades on all blue take one contract out at a fixed point, move the stop to break even
I need an MQL5 indicator that identifies reversals without repainting or placing signals with an offset. The goal is to minimize lag and reduce whipsaw trades. Desired results are similar to the attached image. Requirements: - No repainting - No signal offset - Emphasis on reducing lag - MQL5 compatible - Clear, concise code If you have the expertise to create a reliable, high-performance indicator, let's discuss
I'm looking for a skilled trader/developer to share a proven scalping strategy on M1-M5 timeframes without using Martingale, Grid trading, or Hedge. Requirements: - Minimum trade duration: 2 minutes - Lot size: <20 - Proof of skill: Provide MT4/MT5 trade history report (PDF/HTML) - No High Frequency Trades - GMT+1 timezone, flexible hours - Price negotiable, performance-based compensation possible If you're a
MT5 30 - 50 USD
I'm looking for an experienced MQL5 developer to help with backtesting, optimization, and VPS setup for a prop firm EA on XAUUSD (Gold). Scope of work - Backtest and optimize using high-quality tick data from Dukascopy or Polygon (2020–2025) - Perform Monte Carlo and Walk-Forward testing to optimize parameters like ATR multipliers and risk % - VPS installation and configuration for continuous MT5 operation - Apply
Good day, I would like to build an automated trading system for Ninjatrader using 2 MACD, a Supertrend, and a moving average indicator. I want the option to adjust the indicator settings, the ability to trade at three different times, and the option to receive alerts. I want to get an idea of what that will cost me. It will enter trades on all blue take one contract out at a fixed point, move the stop to break even
I have an indicator i need automated i use it manually and it plots arrows. Can you automate it for my Ninjatrader8? Do you need to see file? Expert Ninjatrader Developer can Bid for this project

Информация о проекте

Бюджет
30+ USD