ICustom函数 - 页 15 1...891011121314151617181920212223 新评论 [删除] 2011.11.02 08:57 #141 有什么例子可以说明使用icustom函数来获得两个相同的时间框架的缓冲区? 由于两个时间段的缓冲区有相同的名称,我如何能够确定不同的时间段? 当前时间 框架 double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); 更高的时间框架 double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); Mladen Rakic 2011.11.02 09:25 #142 试着这样做。 double trend1minute = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); double trend5minute = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); 然后根据你的需要使用这两个变量(例如:如果(trend1minute == ... && trend5minute == ... )做一些事情)。 mtuppers: 有什么例子可以说明使用icustom函数来获得两个相同时间段的缓冲区?由于2个缓冲区的名称相同,我怎样才能确定不同的时间框架? 当前时间框架 double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0); 更高的时间框架 double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1); nhopkins 2011.11.19 12:20 #143 在EA中使用iCustom,单一实例 大家好。 我正在编写一个使用自定义指标 的EA,当我回测时,我注意到每次调用iCustom函数时似乎都要加载一个新的指标实例。有谁知道有什么方法可以一次性加载自定义指标,并在每次调用时将其引用回来? void OnBar() { RSIPL = iCustom(NULL,0,"NCH_DI",0,4,BarIndex); TSL = iCustom(NULL,0,"NCH_DI",0,5,BarIndex); HAOpen = iCustom(NULL,0,"HeikenAshi",0,2,BarIndex); HAClose = iCustom(NULL,0,"HeikenAshi",0,3,BarIndex); PACHigh = iMA(NULL,0,5,0,MODE_SMMA,PRICE_HIGH,BarIndex); PACLow = iMA(NULL,0,5,0,MODE_SMMA,PRICE_LOW,BarIndex); // DO MY OTHER STUFF HERE } 上述代码在每次调用........,都会加载一个新的NCH_DI实例。 谢谢 ICustom function New to Coding need custom indicator CodeMeister 2011.11.19 12:32 #144 不能做 这就是MT4的工作方式。最好的解决办法是尽量减少代码中iCustom()的调用次数。通常只有在形成新条形的时候才需要调用HA。每一次 调用都不是最佳选择。 nhopkins 2011.11.19 12:47 #145 CodeMeister: 这就是MT4的工作方式。最好的解决方案是尽量减少代码中iCustom()的调用次数。通常只有在形成新条形的时候才需要调用HA。每一次调用都不是最佳选择。 我确实把所有的调用都放在一个新的条形结构上。不幸的是,NCH_DI是一个相对密集内存的代码。你有什么建议可以让我抛弃旧的实例吗? CodeMeister 2011.11.19 15:02 #146 试试这个 策略测试器 并不是这个EA的最终目标。在图表上实时运行它才是。我相信只要你有足够的内存,iCustom()的加载就会在图表上发生一次,所以我不会花很多时间去做一些适合Strategy Tester的特殊性的工作。除了iCustom()之外,唯一的选择是在EA中直接编码指标。 nhopkins 2011.11.19 23:30 #147 我想过把它重新编码到EA....。我决定在这种情况下这是不实际的。我发现,如果我在指标中注释掉#属性 indicator_separate_window,它将在调用完成后加载和卸载,我将完成主要编码并演示一周左右,监测我的内存使用情况。谢谢大家,我会让你们知道进展如何。 [删除] 2011.12.10 20:55 #148 关于iCustom Indicator 的问题 你好。 我的EA在使用自己的iCustom指标。 当一个新的蜡烛打开时,该指标被iCustom调用。 现在我意识到,iCustom[1]的值不等于前一栏的iCustom[0]。 这个值是相似的,但不完全是它应该是的,也是我为RSI验证的。 知道问题出在哪里吗? 谢谢你的每一个提示。 卡米洛 Kale 2011.12.10 21:16 #149 这取决于自定义指标 所使用的价格。如果你的自定义指标使用的是收盘价、最高价、最低价或任何其他在当前蜡烛发展过程中发生变化的价格,那么[0]指数的值将被改变。 例如,如果你调用使用自定义价格的指标,并比较[0]的值,在酒吧关闭后,你将与[1]的结果进行比较,几乎可以肯定,因为鸡蛋是鸡蛋,其值将是不同的。但是,如果你将自定义指标设置为使用开盘价而不是收盘价,那么数值将是相等的(这只是因为开盘价在蜡烛发展过程中没有变化)。 [删除] 2011.12.10 22:33 #150 谢谢你的快速回答,Kalenzo。 我检查了[2]的值,发现[1]->[2]的值看起来都很好。 这里有一个我的指标值的例子 .... [0]..........[1].........[2] t4 31,8711 42,6700 52,1915 t3 44,6881 52,1915 60,3014 t2 53,0572 60,3014 67,6553 t1 59,8860 67,6553 74,5797 因此,看起来问题出在对开杠的识别上。 我只是用之前的检查方法。 if(Volume[0]>1)返回。 这样不是很好吗? 1...891011121314151617181920212223 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
有什么例子可以说明使用icustom函数来获得两个相同的时间框架的缓冲区?
由于两个时间段的缓冲区有相同的名称,我如何能够确定不同的时间段?
当前时间 框架
double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
更高的时间框架
double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);
然后根据你的需要使用这两个变量(例如:如果(trend1minute == ... && trend5minute == ... )做一些事情)。
有什么例子可以说明使用icustom函数来获得两个相同时间段的缓冲区?
由于2个缓冲区的名称相同,我怎样才能确定不同的时间框架?
当前时间框架
double trend = iCustom(NULL, 1, "HA01", 0, 1500, 0, 0);
更高的时间框架
double trend = iCustom(NULL, 5, "HA01", 0, 1500, 0, 1);在EA中使用iCustom,单一实例
大家好。
我正在编写一个使用自定义指标 的EA,当我回测时,我注意到每次调用iCustom函数时似乎都要加载一个新的指标实例。有谁知道有什么方法可以一次性加载自定义指标,并在每次调用时将其引用回来?
void OnBar()
{
RSIPL = iCustom(NULL,0,"NCH_DI",0,4,BarIndex);
TSL = iCustom(NULL,0,"NCH_DI",0,5,BarIndex);
HAOpen = iCustom(NULL,0,"HeikenAshi",0,2,BarIndex);
HAClose = iCustom(NULL,0,"HeikenAshi",0,3,BarIndex);
PACHigh = iMA(NULL,0,5,0,MODE_SMMA,PRICE_HIGH,BarIndex);
PACLow = iMA(NULL,0,5,0,MODE_SMMA,PRICE_LOW,BarIndex);
// DO MY OTHER STUFF HERE
}
上述代码在每次调用........,都会加载一个新的NCH_DI实例。
谢谢
不能做
这就是MT4的工作方式。最好的解决办法是尽量减少代码中iCustom()的调用次数。通常只有在形成新条形的时候才需要调用HA。每一次 调用都不是最佳选择。
这就是MT4的工作方式。最好的解决方案是尽量减少代码中iCustom()的调用次数。通常只有在形成新条形的时候才需要调用HA。每一次调用都不是最佳选择。
我确实把所有的调用都放在一个新的条形结构上。不幸的是,NCH_DI是一个相对密集内存的代码。你有什么建议可以让我抛弃旧的实例吗?
试试这个
策略测试器 并不是这个EA的最终目标。在图表上实时运行它才是。我相信只要你有足够的内存,iCustom()的加载就会在图表上发生一次,所以我不会花很多时间去做一些适合Strategy Tester的特殊性的工作。除了iCustom()之外,唯一的选择是在EA中直接编码指标。
我想过把它重新编码到EA....。我决定在这种情况下这是不实际的。我发现,如果我在指标中注释掉#属性 indicator_separate_window,它将在调用完成后加载和卸载,我将完成主要编码并演示一周左右,监测我的内存使用情况。谢谢大家,我会让你们知道进展如何。
关于iCustom Indicator 的问题
你好。
我的EA在使用自己的iCustom指标。
当一个新的蜡烛打开时,该指标被iCustom调用。
现在我意识到,iCustom[1]的值不等于前一栏的iCustom[0]。
这个值是相似的,但不完全是它应该是的,也是我为RSI验证的。
知道问题出在哪里吗?
谢谢你的每一个提示。
卡米洛
这取决于自定义指标 所使用的价格。如果你的自定义指标使用的是收盘价、最高价、最低价或任何其他在当前蜡烛发展过程中发生变化的价格,那么[0]指数的值将被改变。
例如,如果你调用使用自定义价格的指标,并比较[0]的值,在酒吧关闭后,你将与[1]的结果进行比较,几乎可以肯定,因为鸡蛋是鸡蛋,其值将是不同的。但是,如果你将自定义指标设置为使用开盘价而不是收盘价,那么数值将是相等的(这只是因为开盘价在蜡烛发展过程中没有变化)。
谢谢你的快速回答,Kalenzo。
我检查了[2]的值,发现[1]->[2]的值看起来都很好。
这里有一个我的指标值的例子
.... [0]..........[1].........[2]
t4 31,8711 42,6700 52,1915
t3 44,6881 52,1915 60,3014
t2 53,0572 60,3014 67,6553
t1 59,8860 67,6553 74,5797
因此,看起来问题出在对开杠的识别上。
我只是用之前的检查方法。
if(Volume[0]>1)返回。
这样不是很好吗?