年度归档: 2024 年

190 篇文章

MT4 EA编程模板
这里 https://www.earnforex.com/metatrader-expert-advisors/expert-advisor-template/ 有一个 EA 编程模板,注释也很全,定义了相关状态的枚举,没有使用魔数。 OnTick 函数: //The OnTick function is triggered every time …
在 MT4 中使用 iCustom
在循环中查看 iCustom 指标的索引值 input string Indicator = "AMAngleZn"; //+------------------------------------------------------------------+ //| | //+-------------------------…
MT4追踪止损
一般追踪止损 void orderTrailingStopGeneral(double startPips, double stopPips) { double orderPrice = NormalizeDouble(OrderOpenPrice(), (int)MarketInfo(OrderSymbol(), MODE_DIGITS)); d…
MT4摊平下单
input double lots = 0.01; input double slippage = 3; input int Fast_MA = 5; input int Slow_MA = 15; input double nampin = 5; input int maxnampin = 5; input int MagicNumber = 1…
MT4在特定时间停止开仓
input int TakeProfit = 5; input double Lots = 0.01; input int MagicNumber = 12345; input bool Weekend_Stop = true; input int Stop_Day_Of_Week1 = 1; input int Stop_Day_Of_Week2…
MT4 连续上涨三根K线开仓
static int TicketNumber; int OnInit() { return (INIT_SUCCEEDED); } void OnDeinit(const int reason) { } void OnTick() { if (iOpen(Symbol(), 0, 1) < iClose(Symbol(), 0, 1) &a…
MT4 RSI 指标开仓平仓
static int TicketNumber; int OnInit() { return (INIT_SUCCEEDED); } void OnDeinit(const int reason) { } void OnTick() { if (OrdersTotal() == 0 && iRSI(Symbol(), 0, 14, …
MT4在特定时间开仓平仓
input double LOT = 0.01; input int SLIP = 1; input int MAGIC = 12345; static int TicketNumber; int OnInit() { return (INIT_SUCCEEDED); } void OnDeinit(const int reason) { } vo…
MT4 计算指标时的回调函数,到底该更新几根 bar 的计算
新版的 MT4 指标计算在 OnCalculate 函数中,每次 tick 数据变动,相当于刷新最后一根 bar 的 Close。这时只需要重新计算最后一根的 bar 上的数据。显然不希望在最后一根 bar 上不断更新收盘价时,均线缺不变化。 但是如果在 EA 中用 iCustom 来引用这根均线时,可以采用上一根已收盘的 bar 的来计算。 采用…