根据以下MT5中的EA交易代码如下:+------------------------------------------------------------------+ MACDSimpleReshetovbarabashkakvns editionmq5 Copyright © 2006 Yury
根据您提供的没有未来函数的代码,可以尝试编写以下类似的MT5中的EA交易代码:
#property strict
input int Lots = 0.01; // 手数
input double StopLossPercentage = 0.02; // 止损百分比
input double TakeProfitPercentage = 0.03; // 止盈百分比
int OnInit()
{
if (!SymbolInfoDouble(Symbol(), SYMBOL_MARGIN_INITIAL)) {
Print("Symbol not found");
return INIT_FAILED;
}
return INIT_SUCCEEDED;
}
void OnDeinit(const int reason)
{
// 清理代码
}
void OnTick()
{
double diff = iMA(NULL, 12, 0, MODE_EMA, PRICE_CLOSE, 0) - iMA(NULL, 26, 0, MODE_EMA, PRICE_CLOSE, 0);
double dea = iMA(NULL, 9, 0, MODE_EMA, diff, 0);
double macd = 2 * (diff - dea / 2);
double ah = iHighest(NULL, 0, MODE_HIGH, 13 * 1, 0);
double al = iLowest(NULL, 0, MODE_LOW, 13 * 0.3, 0);
double trendLine = iMA(NULL, 34, 0, MODE_EMA, macd, 0);
double k = iMA(NULL, 2, 0, MODE_SMA, macd, 0);
double d = iMA(NULL, 2, 0, MODE_SMA, k, 0);
double j = iMA(NULL, 2, 0, MODE_SMA, d, 0);
double previousMacd = iMACD(NULL, 12, 26, 9, PRICE_CLOSE, MODE_MAIN, 1);
if (macd > 0 && previousMacd < macd) {
// 开多头仓位
double stopLoss = Ask - (Ask * StopLossPercentage);
double takeProfit = Ask + (Ask * TakeProfitPercentage);
int ticket = OrderSend(Symbol(), OP_BUY, Lots, Ask, 0, stopLoss, takeProfit, "MACD EA", 0, 0, Green);
if (ticket > 0) {
Print("Buy order sent successfully: ", ticket);
} else {
Print("Failed to send buy order: ", GetLastError());
}
} else if (macd < 0 && previousMacd > macd) {
// 开空头仓位
double stopLoss = Bid + (Bid * StopLossPercentage);
double takeProfit = Bid - (Bid * TakeProfitPercentage);
int ticket = OrderSend(Symbol(), OP_SELL, Lots, Bid, 0, stopLoss, takeProfit, "MACD EA", 0, 0, Red);
if (ticket > 0) {
Print("Sell order sent successfully: ", ticket);
} else {
Print("Failed to send sell order: ", GetLastError());
}
}
}
这段代码使用了MACD指标来进行交易决策,并根据当前的MACD值和前一个MACD值的比较来判断是否开仓。当MACD从负值上升到正值时,开多头仓位;当MACD从正值下降到负值时,开空头仓位。止损和止盈水平根据输入的百分比计算。
请注意,这只是一个简单的示例代码,仅供参考。在实际使用中,您可能需要根据自己的交易策略和需求进行适当的修改和调整。同时,使用任何交易系统都存在风险,建议在实际交易之前进行充分的测试和风险评估
原文地址: http://www.cveoy.top/t/topic/iov7 著作权归作者所有。请勿转载和采集!