标准指标超标? - 页 3 1234567 新评论 Forex Trader 2006.11.01 11:47 #21 Rosh,我想弄清楚的是,错误的发生是否是因为USDCHF柱子开始得比较晚。为了追踪这一点,我已经删除了MA(它只会碍事),并额外引入了Close[1]和Open[1]。意味着Open[1]将总是正确的,如果这是问题,差异将在Open[0]中,而Open[1]将不会。现在检查。我错过了什么? Forex Trader 2006.11.01 11:49 #22 好吧,我附上了2张图片,这表明当GBPJPY上出现一个新的条形图 时,你参考的是旧的未改变的USDCHF图表数据,因此你的算法计算是不正确的。只有在一种情况下才会计算正确--如果你把它放在本地的 "图表 "上--但目标是相反的。 Forex Trader 2006.11.01 11:56 #23 我同意。但前提是用Open[1]测试显示没有错误。在这种情况下,我将确信,是的,MT中没有错误。有某种...谈到这里,我想说的是:"我认为这是个很好的例子。 另外,挑战在于找到一种绕过限制的方法。说,在美元兑瑞郎数据到来之前,禁止重绘欧元兑美元指标。现在我正在测试以下变体 while(nPos > 1 || (nPos == 1 && Time[0] <= iTime("USDCHF", 0, 0))) 但这完全取决于MT如何计算IndicatorCounted。如果通过勾选到达时间--它不会起作用,如果通过条形重划的事实--它将起作用。让我们来看看。 Forex Trader 2006.11.01 11:58 #24 这里现在是11-56 MSK或9-56服务器时间。 Open[1]EURUSD H1 是1.2755 Open[1] USDCHF H1是1.2443 欧元 出现了一个新的一小时柱,法郎还 没有什么变化。你的算法将做什么? Forex Trader 2006.11.01 12:01 #25 我同意。但只有在тестирование ,用Open[1]显示没有错误发生。在这种情况下,我将确信,是的,MT中没有错误。有某种...沉默寡言或什么的。 另外,挑战在于找到一种绕过限制的方法。说,在美元兑瑞郎数据到来之前,禁止重绘欧元兑美元指标。现在我正在测试以下变体 while(nPos > 1 || (nPos == 1 && Time[0] <= iTime("USDCHF", 0, 0))) 但这里一切都取决于MT如何计算IndicatorCounted。如果通过勾选到达时间--它将不工作,如果通过条形重绘的事实--它将工作。让我们来看看。 停止,停止。这里是你写的: 正如你从代码中看到的,该指标不依赖于它所连接的货币。这对美元兑瑞郎始终有效。我们把指标附在两个图表上,在我的例子中是澳元兑美元和欧元兑美元,但我想你可以把它附在任何图表上。我们把它放在几天后。我们看到,这些图表是不同的。同样的指标。实时的。同是MT。强行重绘(断开-连接)--它们变得相同。一段时间以来。 所以我们正在谈论在线工作,现在我们已经跳到了一个测试员。我没有时间做这个。 Forex Trader 2006.11.01 12:07 #26 现在的时间是MSK11-56或服务器时间9-56。<br / translate="no"> 打开[1] 欧元兑美元H1是1.2755 打开[1] USDCHF H1是1.2443 欧元 出现了一个新的小时线,FRANK上还 没有任何变化。你的算法将做什么? 是的,你是对的。你必须注意酒吧的时间,而不是它的号码。 Forex Trader 2006.11.01 12:09 #27 <br / translate="no">所以我们正在谈论在线工作,现在我们已经跳到了一个测试员。我没有时间做这个。 没有测试器。只在网上。 Forex Trader 2006.11.01 12:14 #28 删除 Forex Trader 2006.11.01 14:46 #29 亲爱的Rosh,请你解释一下以下情况是如何发生的。 我已经把它输出到酒吧列表的第二个文件中,以便能够看到下拉菜单。 //+------------------------------------------------------------------+ //| RedrawIndicators.mq4 | //| Satori | //| http://www.metaquotes.ru/forum/7790/ | //+------------------------------------------------------------------+ #property copyright "Satori" #property link "http://www.metaquotes.ru/forum/7790/" #property indicator_separate_window #property indicator_buffers 3 #property indicator_color1 Red #property indicator_color2 Blue #property indicator_color3 Yellow //---- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; extern int BarsCount=0; //кол-во считаемых баров, если 0 - то все extern string Currency1="EURUSD"; extern string Currency2="GBPUSD"; int handle,handle2; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_LINE); SetIndexBuffer(0,ExtMapBuffer1); SetIndexLabel(0,Currency1); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,ExtMapBuffer2); SetIndexLabel(1,Currency2); SetIndexStyle(2,DRAW_LINE); SetIndexBuffer(2,ExtMapBuffer3); handle= FileOpen("TestFile.csv",FILE_CSV|FILE_WRITE,';'); handle2= FileOpen("TestFile2.csv",FILE_CSV|FILE_WRITE,';'); if(handle<1 || handle2<1 ) { Print("Файл не обнаружен, последняя ошибка ", GetLastError()); return(false); } else { FileWrite (handle,"index",Symbol(),"index",Currency1,"index",Currency2); FileWrite (handle2,"index",Currency1,Currency2,Symbol()); } return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { //---- FileClose(handle); FileClose(handle2); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(); int i; int test1,test2; datetime tt1,tt2,TimeMain; BarsCount=MathMin(Bars,(MathMin(iBars(Currency1,Period()),iBars(Currency2,Period())))); Print (Bars," ",iBars(Currency1,Period())," ",iBars(Currency2,Period())); Print (BarsCount); for (i=0;i<BarsCount-counted_bars;i++) { TimeMain=Time[i]; test1=iBarShift(Currency1,Period(),TimeMain); test2=iBarShift(Currency2,Period(),TimeMain); ExtMapBuffer1[i]=iTime(Currency1,Period(),test1); ExtMapBuffer2[i]=iTime(Currency2,Period(),test2); ExtMapBuffer3[i]=(ExtMapBuffer1[i]-ExtMapBuffer2[i]); tt1=Time[i]-ExtMapBuffer1[i]; tt2=Time[i]-ExtMapBuffer2[i]; if (ExtMapBuffer3[i]!=0 || tt1!=0 || tt2!=0) { if (FileWrite (handle, i,TimeToStr(Time[i]),iBarShift(Currency1,Period(),TimeMain),TimeToStr(ExtMapBuffer1[i]),iBarShift(Currency2,Period(),TimeMain),TimeToStr(ExtMapBuffer2[i]) )<=0) Print("нифига не пишет!!"); } FileFlush(handle); if (FileWrite (handle2,i, TimeToStr(iTime(Currency1,Period(),test1)), TimeToStr(iTime(Currency2,Period(),test2)), TimeToStr(Time[i]) )<=0) Print("нифига не пишет!!"); FileFlush(handle2); }//---- return(0); } //+------------------------------------------------------------------+ 我们在其他两家经纪公司,而不是Alpari(MIG,FIBO)的EURGBP 4H上运行它。 两者的图片几乎相同,我将展示一个MIG的例子。 EURGBP指数 EURUSD指数 GBPUSD指数 15 30.10.2006 0:00 16 29.10.2006 23:00 16 29.10.2006 23:00 46 23.10.2006 0:00 47 22.10.2006 23:00 47 22.10.2006 23:00 77 16.10.2006 0:00 78 15.10.2006 23:00 78 15.10.2006 23:00 108 09.10.2006 0:00 109 08.10.2006 23:00 109 08.10.2006 23:00 139 02.10.2006 0:00 139 02.10.2006 0:00 140 01.10.2006 23:00 以第46-47小节为例。 在第二个文件中。 45 23.10.2006 4:00 23.10.2006 4:00 23.10.2006 4:00 46 22.10.2006 23:00 22.10.2006 23:00 23.10.2006 0:00 47 22.10.2006 23:00 22.10.2006 23:00 22.10.2006 23:00 48 20.10.2006 20:00 20.10.2006 20:00 20.10.2006 20:00 似乎可以......但问题是--23.10.2006 00:00条在所有三种货币的历史中都出现了!这就是问题所在。也就是说,它在图表上,它在报价档案中。 但是,指标中似乎没有这个内容。 最后一个技巧--如果你试图在这一栏上放一条垂直线,它将转移到下一栏。:о)我试着用垂直线做标记,但没有用。 Standard indicators override?! 100% winning EA,you can't ASCTrend system Forex Trader 2006.11.01 14:50 #30 你介意把它做成一幅画吗?一张截图。在你的脑海中很难安排这些栏目。 1234567 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
另外,挑战在于找到一种绕过限制的方法。说,在美元兑瑞郎数据到来之前,禁止重绘欧元兑美元指标。现在我正在测试以下变体
但这完全取决于MT如何计算IndicatorCounted。如果通过勾选到达时间--它不会起作用,如果通过条形重划的事实--它将起作用。让我们来看看。
Open[1]EURUSD H1 是1.2755
Open[1] USDCHF H1是1.2443
欧元 出现了一个新的一小时柱,法郎还 没有什么变化。你的算法将做什么?
另外,挑战在于找到一种绕过限制的方法。说,在美元兑瑞郎数据到来之前,禁止重绘欧元兑美元指标。现在我正在测试以下变体
但这里一切都取决于MT如何计算IndicatorCounted。如果通过勾选到达时间--它将不工作,如果通过条形重绘的事实--它将工作。让我们来看看。
停止,停止。这里是你写的:
所以我们正在谈论在线工作,现在我们已经跳到了一个测试员。我没有时间做这个。
打开[1] USDCHF H1是1.2443
欧元 出现了一个新的小时线,FRANK上还 没有任何变化。你的算法将做什么?
是的,你是对的。你必须注意酒吧的时间,而不是它的号码。
没有测试器。只在网上。
我已经把它输出到酒吧列表的第二个文件中,以便能够看到下拉菜单。
我们在其他两家经纪公司,而不是Alpari(MIG,FIBO)的EURGBP 4H上运行它。
两者的图片几乎相同,我将展示一个MIG的例子。
EURGBP指数 EURUSD指数 GBPUSD指数
15 30.10.2006 0:00 16 29.10.2006 23:00 16 29.10.2006 23:00
46 23.10.2006 0:00 47 22.10.2006 23:00 47 22.10.2006 23:00
77 16.10.2006 0:00 78 15.10.2006 23:00 78 15.10.2006 23:00
108 09.10.2006 0:00 109 08.10.2006 23:00 109 08.10.2006 23:00
139 02.10.2006 0:00 139 02.10.2006 0:00 140 01.10.2006 23:00
以第46-47小节为例。
在第二个文件中。
45 23.10.2006 4:00 23.10.2006 4:00 23.10.2006 4:00
46 22.10.2006 23:00 22.10.2006 23:00 23.10.2006 0:00
47 22.10.2006 23:00 22.10.2006 23:00 22.10.2006 23:00
48 20.10.2006 20:00 20.10.2006 20:00 20.10.2006 20:00
似乎可以......但问题是--23.10.2006 00:00条在所有三种货币的历史中都出现了!这就是问题所在。也就是说,它在图表上,它在报价档案中。
但是,指标中似乎没有这个内容。
最后一个技巧--如果你试图在这一栏上放一条垂直线,它将转移到下一栏。:о)我试着用垂直线做标记,但没有用。