string counts;
void _a()
{
counts += "a - " + IntegerToString( ObjectsTotal( OBJ_ARROW ) );
//---return;
}
void _b()
{
counts += " - b - " + IntegerToString( ObjectsTotal( OBJ_ARROW ) );
//---return;
}
Print( counts );
// while 1st loop: a - 2 - b - 4// while 2nd loop: a - 2 - b - 4a - 2 - b - 4// while 3rd loop: a - 2 - b - 4a - 2 - b - 4a - 2 - b - 4a - 2 - b - 4// and so on...// But I like only 1st loop results even that loop runs 10 thousand times
OnCalculate
OnCalculate()函数只在自定义指标中被调用,当有必要通过计算 事件来计算指标值时。
这通常发生在收到该符号的新刻度线时,该指标被计算。
这个指标不需要附加到这个符号的任何价格图表上。
OnCalculate()函数必须有一个返回类型int。有 两种可能的定义。在一个指标中,你不能同时使用该函数的两个版本。
第一种形式是为那些可以在单个数据缓冲区上进行计算的指标准备的。这种指标的一个例子是自定义移动平均线。
intOnCalculate(constint rates_total,// size of the price[] array)
缓 冲区int prev_calculated,// 在之前的调用中处理过的条数
constint begin,// 重要数据从哪里 开始
constdouble& price[]// 要计算的数组
);
OnCalculate
OnCalculate()函数只在自定义指标中被调用,当有必要通过计算 事件来计算指标值时。
这通常发生在收到该符号的新刻度线时,该指标被计算。
这个指标不需要附加到这个符号的任何价格图表上。
OnCalculate()函数必须有一个返回类型int。有 两种可能的定义。在一个指标中,你不能同时使用该函数的两个版本。
第一种形式是为那些可以在单个数据缓冲区上进行计算的指标准备的。这种指标的一个例子是自定义移动平均线。
intOnCalculate(constint rates_total,// size of the price[] array)
缓 冲区int prev_calculated,// 在之前的调用中处理过的条数
constint begin,// 重要数据从哪里 开始
constdouble& price[]// 要计算的数组
);
(我使用 "滞后 "一词,它意味着延迟价格行动,订单打开,关闭,只是一个字就把我的MT4平台搞垮了)
我在我的自定义指标 上使用了以下函数。
当我把下面的返回 代码写到我的自定义指标 时,我的自定义指标开始滞后。但工作正常,这是我想要的。
而当我把下面的返回 代码写到我的自定义指标上时,我的自定义指标就不能正常工作,这是我想要的。我的意思是,当假的 MA交叉时,"箭头 "不会返回到之前的MA交叉点。
问: 请问这种情况下我能做什么?
谢谢。
给你。
提前感谢。
好的!谢谢!
我仍然需要更明确的答案。
请提前感谢。
答案是: 同时检查 当前的 MA交叉点和之前的 MA交叉点。
#Buffer (array out of range in ) - Closed
#Custom Indicator Lagging - Closed
# 循环的第一个结果 - 打开
提前感谢。