指定
//+------------------------------------------------------------------+
//| RSI + Bollinger Bands EA (MT5) |
//| Built for Jonah |
//+------------------------------------------------------------------+
#property strict
#property version "1.00"
//================ INPUTS =================
input string SymbolName = "XAUUSD";
input double LotSize = 0.01;
input int RSIPeriod = 14;
input double RSI_Buy_Level = 30;
input double RSI_Sell_Level = 70;
input int BB_Period = 20;
input double BB_Deviation = 2.0;
input double MaxSpread = 0.2;
input int StopLossPoints = 300;
input int TakeProfitPoints= 600;
//================ HANDLES =================
int rsiHandle;
int bbHandle;
//================ INIT ====================
int OnInit()
{
rsiHandle = iRSI(SymbolName, PERIOD_CURRENT, RSIPeriod, PRICE_CLOSE);
bbHandle = iBands(SymbolName, PERIOD_CURRENT, BB_Period, BB_Deviation, 0, PRICE_CLOSE);
if(rsiHandle == INVALID_HANDLE || bbHandle == INVALID_HANDLE)
return INIT_FAILED;
return INIT_SUCCEEDED;
}
//================ TICK ====================
void OnTick()
{
if(!SpreadOK()) return;
if(PositionSelect(SymbolName)) return;
double rsi[1];
double upper[1], lower[1];
double price = SymbolInfoDouble(SymbolName, SYMBOL_BID);
CopyBuffer(rsiHandle, 0, 0, 1, rsi);
CopyBuffer(bbHandle, 1, 0, 1, upper);
CopyBuffer(bbHandle, 2, 0, 1, lower);
// BUY CONDITION
if(rsi[0] <= RSI_Buy_Level && price <= lower[0])
OpenTrade(ORDER_TYPE_BUY);
// SELL CONDITION
if(rsi[0] >= RSI_Sell_Level && price >= upper[0])
OpenTrade(ORDER_TYPE_SELL);
}
//================ SPREAD CHECK =================
bool SpreadOK()
{
double spread = SymbolInfoDouble(SymbolName, SYMBOL_SPREAD);
return spread <= MaxSpread;
}
//================ TRADE EXECUTION =================
void OpenTrade(ENUM_ORDER_TYPE type)
{
MqlTradeRequest req;
MqlTradeResult res;
ZeroMemory(req);
double price = (type == ORDER_TYPE_BUY)
? SymbolInfoDouble(SymbolName, SYMBOL_ASK)
: SymbolInfoDouble(SymbolName, SYMBOL_BID);
req.action = TRADE_ACTION_DEAL;
req.symbol = SymbolName;
req.volume = LotSize;
req.type = type;
req.price = price;
req.sl = (type == ORDER_TYPE_BUY)
? price - StopLossPoints * _Point
: price + StopLossPoints * _Point;
req.tp = (type == ORDER_TYPE_BUY)
? price + TakeProfitPoints * _Point
: price - TakeProfitPoints * _Point;
req.deviation= 10;
req.magic = 111222;
OrderSend(req, res);
}
//================ DEINIT =================
void OnDeinit(const int reason)
{
IndicatorRelease(rsiHandle);
IndicatorRelease(bbHandle);
}
//| RSI + Bollinger Bands EA (MT5) |
//| Built for Jonah |
//+------------------------------------------------------------------+
#property strict
#property version "1.00"
//================ INPUTS =================
input string SymbolName = "XAUUSD";
input double LotSize = 0.01;
input int RSIPeriod = 14;
input double RSI_Buy_Level = 30;
input double RSI_Sell_Level = 70;
input int BB_Period = 20;
input double BB_Deviation = 2.0;
input double MaxSpread = 0.2;
input int StopLossPoints = 300;
input int TakeProfitPoints= 600;
//================ HANDLES =================
int rsiHandle;
int bbHandle;
//================ INIT ====================
int OnInit()
{
rsiHandle = iRSI(SymbolName, PERIOD_CURRENT, RSIPeriod, PRICE_CLOSE);
bbHandle = iBands(SymbolName, PERIOD_CURRENT, BB_Period, BB_Deviation, 0, PRICE_CLOSE);
if(rsiHandle == INVALID_HANDLE || bbHandle == INVALID_HANDLE)
return INIT_FAILED;
return INIT_SUCCEEDED;
}
//================ TICK ====================
void OnTick()
{
if(!SpreadOK()) return;
if(PositionSelect(SymbolName)) return;
double rsi[1];
double upper[1], lower[1];
double price = SymbolInfoDouble(SymbolName, SYMBOL_BID);
CopyBuffer(rsiHandle, 0, 0, 1, rsi);
CopyBuffer(bbHandle, 1, 0, 1, upper);
CopyBuffer(bbHandle, 2, 0, 1, lower);
// BUY CONDITION
if(rsi[0] <= RSI_Buy_Level && price <= lower[0])
OpenTrade(ORDER_TYPE_BUY);
// SELL CONDITION
if(rsi[0] >= RSI_Sell_Level && price >= upper[0])
OpenTrade(ORDER_TYPE_SELL);
}
//================ SPREAD CHECK =================
bool SpreadOK()
{
double spread = SymbolInfoDouble(SymbolName, SYMBOL_SPREAD);
return spread <= MaxSpread;
}
//================ TRADE EXECUTION =================
void OpenTrade(ENUM_ORDER_TYPE type)
{
MqlTradeRequest req;
MqlTradeResult res;
ZeroMemory(req);
double price = (type == ORDER_TYPE_BUY)
? SymbolInfoDouble(SymbolName, SYMBOL_ASK)
: SymbolInfoDouble(SymbolName, SYMBOL_BID);
req.action = TRADE_ACTION_DEAL;
req.symbol = SymbolName;
req.volume = LotSize;
req.type = type;
req.price = price;
req.sl = (type == ORDER_TYPE_BUY)
? price - StopLossPoints * _Point
: price + StopLossPoints * _Point;
req.tp = (type == ORDER_TYPE_BUY)
? price + TakeProfitPoints * _Point
: price - TakeProfitPoints * _Point;
req.deviation= 10;
req.magic = 111222;
OrderSend(req, res);
}
//================ DEINIT =================
void OnDeinit(const int reason)
{
IndicatorRelease(rsiHandle);
IndicatorRelease(bbHandle);
}
反馈
1
等级
项目
0
0%
仲裁
2
0%
/
50%
逾期
0
工作中
2
等级
项目
0
0%
仲裁
1
0%
/
100%
逾期
0
空闲
3
等级
项目
0
0%
仲裁
0
逾期
0
工作中
4
等级
项目
1
0%
仲裁
0
逾期
0
空闲
发布者: 2 文章
5
等级
项目
0
0%
仲裁
0
逾期
0
空闲
相似订单
I am looking for an experienced MQL5 developer to convert a complex TradingView Pine Script (will provide the script from tradingview) into a fully automated MT5 Expert Advisor -bot. The TradingView script includes: Market Structure (BOS, CHoCH, Swing BOS) Strong / Weak High & Low Equilibrium (Premium / Discount zones) Volumetric Order Blocks Fair Value Gaps (FVG / VI / OG) Accumulation & Distribution zones Equal
SpikeEnginePro EA
30+ USD
// Add this to your EA after ExportState() function void SendToBase44(const string state, const string dir, double entry, double sl, double tp) { string url = " https://preview-sandbox--ee0a32a725b788974de435e8cef40b7a.base44.app/api/functions/receiveEAState "; string headers = "Content-Type: application/json\r\n"; string json = "{" "\"symbol\":\""+_Symbol+"\","
1.Sinyal Perdagangan : Sinyal beli: garis MACD utama memotong garis sinyal ke atas (macd_current>signal_current && macd_previous<signal_previous). Sinyal jual: garis MACD utama memotong garis sinyal ke bawah (macd_current<signal_current && macd_previous>signal_previous). Gambar di bawah menunjukkan kasus beli dan jual. 2. Posisi ditutup pada sinyal yang berlawanan: Posisi beli ditutup pada sinyal jual, dan posisi
Olá, preciso de um programador para montar um indicador com base na sobrevenda do estocastico, volume macd, para uma estrategia de reversão e falso rompimento com regioes de OB validos minimas e maximas de H1, H4, D1 e canais para confluencias, quero que seja didatico visualmente e com cores, sons de alertas e algum sinal de call ou put como setas indicando reversões e falsos rompimentos e continuidade
Tow experts for fixing
30+ USD
Subject: Experienced MQL5 Developer | High-Quality Execution & Error Handling "Hello, I am interested in developing your trading system. I specialize in building robust MQL5 Expert Advisors that are not only logically sound but also technically optimized for the MT5 platform. Why work with me? Error-Free Execution: I have deep experience in handling common MT5 execution errors such as Invalid Volume, Not Enough
I need a Developer to develop an EA
100+ USD
Hi, I have a specific set of rules and a strategy to execute a trade. I'm looking for a developer to assist me in developing an MQL5 EA based on my strategies
项目信息
预算
30+ USD
客户
所下订单1
仲裁计数0