Auftrag beendet
Ausführungszeit 3 Tage
Bewertung des Entwicklers
Great customer, nice feedbacks. It is a pleasure to help him.
Bewertung des Kunden
He is a very kind and genuine person and has completed work on time. Skillful and Trustworthy developer!
Spezifikation
PLEASE SEE THE BELOW TABLE AND ADD THESE AS ADDITIONAL FEATURE OF THE EXISTING EA

//+------------------------------------------------------------------+
//| HedgeEA_V1.mq4 |
//| Copyright 2021, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#property copyright "Copyright 2021, MetaQuotes Software Corp."
#property link "https://www.mql5.com"
#property version "1.00"
#property strict
enum ENUM_OPEN_TYPE {TYPE1, //Type1: Instant Hedging
TYPE2 //Type2: Price Entry
};
enum ENUM_TRADE_DIRECTION {BUY,SELL,BOTH};
//+------------------------------------------------------------------+
//| Trades |
//+------------------------------------------------------------------+
extern string Trades="<<=== TRADES ===>>"; //.
extern int Magic=54126548; //Magic Number
extern string TradeComment="VtranscriptionEA"; //Trade Comment
extern ENUM_TRADE_DIRECTION Direction=BOTH; //Trade Direction
extern ENUM_OPEN_TYPE OpenType=TYPE1; //Trade Open Type
extern double EntryPrice=1.20000; //Enter Price
extern double MaxSpread=3; //Max Spread(Pips)
extern string Vols="<<=== Lot Size ===>>";
extern double FixedLotSize=0.1; //Fixed Lot Size [0:Auto]
extern double LotRisk=1; //Risk % of Equity
extern string Param="<<=== SETTINGS ===>>"; //.
extern double UserSL=20; //Stop Loss(Pips) [0:off]
extern double UserTP=20; //Take Profit(Pips)[0:off]
extern double Distance=10; //Distance(Pips)[0:off]
//+------------------------------------------------------------------+
//| Global Variables |
//+------------------------------------------------------------------+
int Bar=0;
int DBar=0;
string Description;
double Pip=Point()*10;
datetime TimeIndex=0;
//+------------------------------------------------------------------+
//| Structer |
//+------------------------------------------------------------------+
struct OrderStr
{
int Step;
double Lot;
string Start;
double TP_Price;
double SL_Price;
};
//---
OrderStr Buy,Sell,Order;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//--- create timer
EventSetTimer(60);
//---
if(OpenType==TYPE1)
Take_Instant_Positions();
if(OpenType==TYPE2)
Place_Initial_Pending();
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
{
//--- destroy timer
EventKillTimer();
}
//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
void OnTick()
{
// datetime NY=D'2021.12.15';
//if(TimeCurrent()>=NY )
// {
// Comment("Product Expired,Contact the Author");
// ExpertRemove();
// }
//---
if(Distance==0)
{
if(Is_Hit_SL())
Take_Another_Positions();
//---
if(Is_Hit_TP())
Take_Another_Positions();
}
if(Distance>0)
{
Place_Pending();
}
//---
}
//+------------------------------------------------------------------+
//| Timer function |
//+------------------------------------------------------------------+
void OnTimer()
{
//---
}
//+------------------------------------------------------------------+
//| Taking Positions |
//+------------------------------------------------------------------+
void Take_Instant_Positions()
{
double spread=MarketInfo(_Symbol,MODE_SPREAD);
if(spread<=MaxSpread*10)
if(Direction==BUY || Direction==BOTH)
if(Positions_Buy_Num()==0)
{
Order.Step=1;
//---
Buy.Lot=LotSize();
//---
Buy.Lot=NormalizeLots(Buy.Lot,Symbol());
//---
int BuyTicket=0;
//---
if(CheckMoneyForTrade(_Symbol,Buy.Lot,OP_BUY))
if(CheckVolumeValue(Buy.Lot,Description))
BuyTicket=OrderSend(_Symbol,OP_BUY,Buy.Lot,Ask,10,0,0,TradeComment,Magic,0,clrBlue);
//---
Order.Start="Begin";
//---
if(UserTP>0)
Buy.TP_Price=Ask+UserTP*Pip;
else
Buy.TP_Price=0;
//---
if(UserSL>0)
Buy.SL_Price=Ask-UserSL*Pip;
else
Buy.SL_Price=0;
//---
Order_SLTP_Modification(Buy.SL_Price,Buy.TP_Price,BuyTicket);
//---
TimeIndex=TimeCurrent();
}
//---
if(spread<=MaxSpread*10)
if(Direction==SELL|| Direction==BOTH)
if(Positions_Sell_Num()==0)
{
Order.Step=1;
//---
Sell.Lot=LotSize();
//---
Sell.Lot=NormalizeLots(Sell.Lot,Symbol());
//---
int SellTicket=0;
if(CheckMoneyForTrade(_Symbol,Sell.Lot,OP_SELL))
if(CheckVolumeValue(Sell.Lot,Description))
SellTicket=OrderSend(_Symbol,OP_SELL,Sell.Lot,Bid,10,0,0,TradeComment,Magic,0,clrRed);
//---
Order.Start="Begin";
//---
if(UserTP>0)
Sell.TP_Price=Bid-UserTP*Pip;
else
Sell.TP_Price=0;
//---
if(UserSL>0)
Sell.SL_Price=Bid+UserSL*Pip;
else
Sell.SL_Price=0;
//---
Order_SLTP_Modification(Sell.SL_Price,Sell.TP_Price,SellTicket);
//---
TimeIndex=TimeCurrent();
}
//---
}
//+------------------------------------------------------------------+
//| Taking Positions |
//+------------------------------------------------------------------+
void Take_Another_Positions()
{
double spread=MarketInfo(_Symbol,MODE_SPREAD);
if(spread<=MaxSpread*10)
if(Direction==BUY || Direction==BOTH)
{
Order.Step++;
//---
Buy.Lot=LotSize();
//---
Buy.Lot=NormalizeLots(Buy.Lot,Symbol());
//---
int BuyTicket=0;
//---
if(CheckMoneyForTrade(_Symbol,Buy.Lot,OP_BUY))
if(CheckVolumeValue(Buy.Lot,Description))
BuyTicket=OrderSend(_Symbol,OP_BUY,Buy.Lot,Ask,10,0,0,TradeComment,Magic,0,clrBlue);
//---
Order.Start="Begin";
//---
if(UserTP>0)
Buy.TP_Price=Ask+UserTP*Pip;
else
Buy.TP_Price=0;
//---
if(UserSL>0)
Buy.SL_Price=Ask-UserSL*Pip;
else
Buy.SL_Price=0;
//---
Order_SLTP_Modification(Buy.SL_Price,Buy.TP_Price,BuyTicket);
//---
TimeIndex=TimeCurrent();
}
//---
if(spread<=MaxSpread*10)
if(Direction==SELL|| Direction==BOTH)
{
Order.Step=1;
//---
Sell.Lot=LotSize();
//---
Sell.Lot=NormalizeLots(Sell.Lot,Symbol());
//---
int SellTicket=0;
if(CheckMoneyForTrade(_Symbol,Sell.Lot,OP_SELL))
if(CheckVolumeValue(Sell.Lot,Description))
SellTicket=OrderSend(_Symbol,OP_SELL,Sell.Lot,Bid,10,0,0,TradeComment,Magic,0,clrRed);
//---
Order.Start="Begin";
//---
if(UserTP>0)
Sell.TP_Price=Bid-UserTP*Pip;
else
Sell.TP_Price=0;
//---
if(UserSL>0)
Sell.SL_Price=Bid+UserSL*Pip;
else
Sell.SL_Price=0;
//---
Order_SLTP_Modification(Sell.SL_Price,Sell.TP_Price,SellTicket);
//---
TimeIndex=TimeCurrent();
}
//---
}
//+------------------------------------------------------------------+
//| Place Initial Pending Order |
//+------------------------------------------------------------------+
void Place_Initial_Pending()
{
if(Direction==BUY || Direction==BOTH)
if(Order_Buy_Num()==0)
{
int BuyTicket=0;
if(Ask>EntryPrice)
BuyTicket=OrderSend(_Symbol,OP_BUYLIMIT,LotSize(),EntryPrice,5,0,0,TradeComment,Magic,0,clrBlue);
if(Ask<EntryPrice)
BuyTicket=OrderSend(_Symbol,OP_BUYSTOP,LotSize(),EntryPrice,5,0,0,TradeComment,Magic,0,clrBlue);
//---
if(UserTP>0)
Buy.TP_Price=EntryPrice+UserTP*Pip;
else
Buy.TP_Price=0;
//---
if(UserSL>0)
Buy.SL_Price=EntryPrice-UserSL*Pip;
else
Buy.SL_Price=0;
//---
Order_SLTP_Modification(Buy.SL_Price,Buy.TP_Price,BuyTicket);
}
//---
if(Direction==SELL || Direction==BOTH)
if(Order_Sell_Num()==0)
{
int SellTicket=0;
if(Bid>EntryPrice)
SellTicket=OrderSend(_Symbol,OP_SELLSTOP,LotSize(),EntryPrice,5,0,0,TradeComment,Magic,0,clrRed);
if(Bid<EntryPrice)
SellTicket=OrderSend(_Symbol,OP_SELLLIMIT,LotSize(),EntryPrice,5,0,0,TradeComment,Magic,0,clrRed);
//---
if(UserTP>0)
Sell.TP_Price=EntryPrice-UserTP*Pip;
else
Sell.TP_Price=0;
//---
if(UserSL>0)
Sell.SL_Price=EntryPrice+UserSL*Pip;
else
Sell.SL_Price=0;
//---
Order_SLTP_Modification(Sell.SL_Price,Sell.TP_Price,SellTicket);
}
}
//+------------------------------------------------------------------+
//| Place Pending Order |
//+------------------------------------------------------------------+
void Place_Pending()
{
if(Direction==BUY || Direction==BOTH)
{
if(Order_Num(OP_BUYSTOP)==0)
{
int BuyTicket=0;
//---
double Price=Ask+Distance*Point()*10;
BuyTicket=OrderSend(_Symbol,OP_BUYSTOP,LotSize(),Price,5,0,0,TradeComment,Magic,0,clrBlue);
//---
if(UserTP>0)
Buy.TP_Price=Price+UserTP*Pip;
else
Buy.TP_Price=0;
//---
if(UserSL>0)
Buy.SL_Price=Price-UserSL*Pip;
else
Buy.SL_Price=0;
//---
Order_SLTP_Modification(Buy.SL_Price,Buy.TP_Price,BuyTicket);
}
//---
if(Order_Num(OP_BUYLIMIT)==0)
{
double Price=Ask-Distance*Point()*10;
int BuyTicket=OrderSend(_Symbol,OP_BUYLIMIT,LotSize(),Price,5,0,0,TradeComment,Magic,0,clrBlue);
//---
if(UserTP>0)
Buy.TP_Price=Price+UserTP*Pip;
else
Buy.TP_Price=0;
//---
if(UserSL>0)
Buy.SL_Price=Price-UserSL*Pip;
else
Buy.SL_Price=0;
//---
Order_SLTP_Modification(Buy.SL_Price,Buy.TP_Price,BuyTicket);
}
}
//---
if(Direction==SELL || Direction==BOTH)
{
if(Order_Num(OP_SELLLIMIT)==0)
{
int SellTicket=0;
//---
double Price=Bid+Distance*Point()*10;
SellTicket=OrderSend(_Symbol,OP_SELLLIMIT,LotSize(),Price,5,0,0,TradeComment,Magic,0,clrRed);
//---
if(UserTP>0)
Sell.TP_Price=Price-UserTP*Pip;
else
Sell.TP_Price=0;
//---
if(UserSL>0)
Sell.SL_Price=Price+UserSL*Pip;
else
Sell.SL_Price=0;
//---
Order_SLTP_Modification(Sell.SL_Price,Sell.TP_Price,SellTicket);
}
//---
if(Order_Num(OP_SELLSTOP)==0)
{
double Price=Bid-Distance*Point()*10;
int SellTicket=OrderSend(_Symbol,OP_SELLSTOP,LotSize(),Price,5,0,0,TradeComment,Magic,0,clrRed);
//---
if(UserTP>0)
Sell.TP_Price=Price-UserTP*Pip;
else
Sell.TP_Price=0;
//---
if(UserSL>0)
Sell.SL_Price=Price+UserSL*Pip;
else
Sell.SL_Price=0;
//---
Order_SLTP_Modification(Sell.SL_Price,Sell.TP_Price,SellTicket);
}
}
}
//+------------------------------------------------------------------+
//| Position Number |
//+------------------------------------------------------------------+
int Positions_Num()
{int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==OP_BUY || OrderType()==OP_SELL)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Position Number |
//+------------------------------------------------------------------+
int Positions_Sell_Num()
{int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==OP_SELL)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Position Buy Number |
//+------------------------------------------------------------------+
int Positions_Buy_Num()
{int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==OP_BUY)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Position Number |
//+------------------------------------------------------------------+
int Order_Sell_Num()
{
int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==OP_SELLLIMIT || OrderType()==OP_SELLSTOP)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Position Buy Number |
//+------------------------------------------------------------------+
int Order_Buy_Num()
{int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==OP_BUYLIMIT || OrderType()==OP_BUYSTOP)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Order Numbers By Type |
//+------------------------------------------------------------------+
int Order_Num(ENUM_ORDER_TYPE Type)
{int Num=0;
for(int i=OrdersTotal()-1;i>=0;i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
if(OrderMagicNumber()==Magic && OrderSymbol()==_Symbol)
if(OrderType()==Type)
Num++;
}
return(Num);
}
//+------------------------------------------------------------------+
//| Normalize |
//+------------------------------------------------------------------+
double NormalizeLots(double lots, string pair="")
{
if (pair == "") pair = Symbol();
double lotStep = MarketInfo(pair, MODE_LOTSTEP),
minLot = MarketInfo(pair, MODE_MINLOT);
lots = MathRound(lots/lotStep) * lotStep;
if (lots < minLot) lots = minLot; // or minLot
return(lots);
}
//+------------------------------------------------------------------+
//| Check if there is enough money |
//+------------------------------------------------------------------+
bool CheckMoneyForTrade(string symb, double lots,int type)
{
double free_margin=AccountFreeMarginCheck(symb,type, lots);
//-- if there is not enough money
if(free_margin<0)
{
string oper=(type==OP_BUY)? "Buy":"Sell";
Print("Not enough money for ", oper," ",lots, " ", symb, " Error code=",GetLastError());
return(false);
}
//--- checking successful
return(true);
}
//+------------------------------------------------------------------+
//| Check the correctness of the order volume |
//+------------------------------------------------------------------+
bool CheckVolumeValue(double volume,string &description)
{
//--- minimal allowed volume for trade operations
double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
if(volume<min_volume)
{
description=StringFormat("Volume is less than the minimal allowed SYMBOL_VOLUME_MIN=%.2f",min_volume);
return(false);
}
//--- maximal allowed volume of trade operations
double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
if(volume>max_volume)
{
description=StringFormat("Volume is greater than the maximal allowed SYMBOL_VOLUME_MAX=%.2f",max_volume);
return(false);
}
//--- get minimal step of volume changing
double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);
int ratio=(int)MathRound(volume/volume_step);
if(MathAbs(ratio*volume_step-volume)>0.0000001)
{
description=StringFormat("Volume is not a multiple of the minimal step SYMBOL_VOLUME_STEP=%.2f, the closest correct volume is %.2f",
volume_step,ratio*volume_step);
return(false);
}
description="Correct volume value";
return(true);
}
//+------------------------------------------------------------------+
//| LotSize Calculator |
//+------------------------------------------------------------------+
double LotSize()
{
if(FixedLotSize>0)
return(FixedLotSize);
//---
if(FixedLotSize==0 && UserSL>0)
{
double Current_PointValue= (MarketInfo(Symbol(),MODE_TICKSIZE)!=0) ? MarketInfo(Symbol(),MODE_TICKVALUE)*MarketInfo(Symbol(),MODE_POINT)/MarketInfo(Symbol(),MODE_TICKSIZE)*1 : 0;
double Target_PointValue= (UserSL != 0) ? (AccountEquity()*LotRisk/100)/ (UserSL*10) : 0 ;
double Vol= (Current_PointValue!=0) ? Target_PointValue/Current_PointValue : 0;
// Print("Sym: ",Sym," Vol: ",Vol," Target_PointValue: ",Target_PointValue," Current_PointValue: ",Current_PointValue);
if(MarketInfo(Symbol(),MODE_MINLOT)==0.1)
Vol=NormalizeDouble(Vol,1);
else if(MarketInfo(Symbol(),MODE_MINLOT)==0.01)
Vol=NormalizeDouble(Vol,2);
if(Vol<MarketInfo(Symbol(),MODE_MINLOT)) Vol=MarketInfo(Symbol(),MODE_MINLOT);
if(Vol>MarketInfo(Symbol(),MODE_MAXLOT)) Vol=MarketInfo(Symbol(),MODE_MAXLOT);
return(Vol);
}
return 0;
}
//+------------------------------------------------------------------+
//| Order SL & TP Modification for ECN Accounts |
//+------------------------------------------------------------------+
void Order_SLTP_Modification(double StopLoss,double TakeProfit,int Ticket)
{
if(OrderSelect(Ticket,SELECT_BY_TICKET,MODE_TRADES))
{
bool Modify_Order=OrderModify(OrderTicket(),OrderOpenPrice(),StopLoss,TakeProfit,0,clrNONE);
if(!Modify_Order)
Print("Cannot Modify Order. Error: ",GetLastError()," SL: ",StopLoss," TP: ",TakeProfit," Type: ",OrderType());
}
}
//+------------------------------------------------------------------+
//| Check if trade hit TP |
//+------------------------------------------------------------------+
bool Is_Hit_TP()
{
for(int i=OrdersHistoryTotal()-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if(OrderSymbol()==Symbol())
if(OrderMagicNumber()==Magic)
if(OrderCloseTime()>TimeIndex)
if(StringSubstr(OrderComment(),StringLen(OrderComment())-4,4)=="[tp]")
{
TimeIndex=TimeCurrent();
return(true);
}
}
return(false);
}
//+------------------------------------------------------------------+
//| Check if trade hit SL |
//+------------------------------------------------------------------+
bool Is_Hit_SL()
{
for(int i=OrdersHistoryTotal()-1; i>=0; i--)
{
if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
if(OrderSymbol()==Symbol())
if(OrderMagicNumber()==Magic)
if(OrderCloseTime()>TimeIndex)
if(StringSubstr(OrderComment(),StringLen(OrderComment())-4,4)=="[sl]")
{
TimeIndex=TimeCurrent();
return(true);
}
}
return(false);
}
Bewerbungen
1
Bewertung
Projekte
416
30%
Schlichtung
74
19%
/
72%
Frist nicht eingehalten
52
13%
Arbeitet
2
Bewertung
Projekte
73
47%
Schlichtung
2
50%
/
50%
Frist nicht eingehalten
2
3%
Frei
3
Bewertung
Projekte
269
29%
Schlichtung
2
50%
/
0%
Frist nicht eingehalten
3
1%
Arbeitet
Veröffentlicht: 2 Beispiele
Ähnliche Aufträge
Account size 50$ to 100$ or 5000USC to 10000USC ( Account $ Size may not matter ) Max Leverage 1000-2000 Min Lot 0.01 [ if averaging possible ] Averaging + Shift TP Faster Required if Trend Direction is Clear Account Protection Maxx Profit Max Loss Key Based Activation News Filter Need Expert to handle this to avoid false entry [ Developer can suggest extra additional filters inputs here ] as i mentioned I have no
Build a Forex Multi-Basket Trading Bot for OANDA (Python v20 REST API Only) MANDATORY DEVELOPER REQUIREMENTS (PLEASE READ BEFORE APPLYING): Do not apply for this project unless you meet the following strict professional criteria: 1. Deep Mathematical & Quantitative Background: You must thoroughly understand statistical distributions, rolling standard deviations (σ), calculating matrix medians, and dynamic Z-score
I need a complete MetaTrader 5 Expert Advisor built for XAUUSD. The EA will trade a multi-timeframe trend-pullback strategy using the Daily, H4, and M15 timeframes. It must generate signals, manage trades, send alerts, and come with a full backtest on gold. This is a technical build. I am not asking for guaranteed profits or financial advice. Platform and Market Platform: MetaTrader 5 Language: MQL5 Symbol: XAUUSD
I need an AI based mt5 EA which self learns and improves on its previous mistakes. The EA must be able to utilize numerous trade set ups like; 1. CRT, 2. liquidity sweep reversal at selected higher timeframe where a candle sweeps previous candle high and closes lower or sweeps previous candle low and closes higher, 3. SMC where it trades on OB, CHoCH, BOS. 4. Support and resistance. It should trade any currency pair
Tradingview strategy develop
30+ USD
i need some tradingview strategy that i want to use as a tester, i have something that i am working on currently and i need someone that can provide me with tradingview strategies that doesn't have a win rate, the one with 1:1 RR it need to have low win rate like 10% or 5% profitability, i am not paying $30 for,i dont have up to that for this cause i only want to use it as a test, if anyone have any to send me please
An expert trading bot
100+ USD
hello i need help building a ea bot for mt5 and i have started on claude but i will need someone if a incredible experience to make my ideas come to live. please contact so we can schedule a quick call and i can share anything that concerns you for the task
Quantower strategy development
100+ USD
I am looking for someone with real experience developing strategies, indicators, or trading tools for Quantower . The strategy itself is relatively simple. The main issue is that I need to use some of Quantower's functions and API capabilities to program the strategy, but there is limited documentation available for some of the functionality, and I do not have enough time to fully understand the API and implement
I am looking for an experienced MQL5 developer who can BOTH research trading strategies and develop a commercial-quality MetaTrader 5 Expert Advisor. This is NOT simply a coding job. The developer is free to choose the trading logic, indicators, entry method, exit method, timeframe architecture and strategy type. I do not require the EA to copy or resemble any existing commercial EA. My priority is: ROBUST LONG-TERM
A developer will create an AI assisted EA forex watch-list scanner (not an auto-trader) designed to surface PDL/PDH bounces on M15, with coding in Python/MQL5. This will strictly be a market intelligence and scanning tool (no automatic order placement) and EA primary function will be a delivery of visual dashboard UI, 2-phased alerts (warning vs. execution), and multi-channel notification. 1. Project Overview &
EA Scalping XAUUSD M15 - EMA Cross
30 - 50 USD
Hello, please make me a simple MT5 Expert Advisor for XAUUSD on M15 timeframe. TRADING LOGIC: - BUY when EMA(10) crosses UP EMA(30) - SELL when EMA(10) crosses DOWN EMA(30) TRADING HOURS: - Only trade between 19:00 - 22:00 WIB / Jakarta time RISK SETTINGS: - Lot size: 0.01 - Stop Loss: 70 points - Take Profit: 150 - 300 points - Max 1 open position Please deliver .ex5 file ready to use. Thank you
Projektdetails
Budget
30+ USD