PDA

View Full Version : EMA在特定时间的代码价格如何?



法克尔弗里德里希
11-20-2009 18:03, 06:03 PM
亲爱的FF读者...任何人都可以在特定时间将EMA的价格写入EA ..

这里我的问题的细节:

1.时间框架1小时。
2. EMA 25,价格收盘价,中位数HL2。
3. EMA的固定时间让在02.00服务器。

如何对其进行编码......记住它不是条形图的价格......而是当时(02.00)的价格EMA线。

有人知道mql编码,请帮忙...谢谢。

sokesyallio
05-22-2020 21:04, 09:04 PM
如何对其进行编码......记住它不是条形图的价格......而是当时(02.00)的价格EMA线。有人知道mql编码,请帮忙...谢谢。
iBarShift()将为您提供最接近给定时间(以POSIX时间戳给出的时间,请参阅日期和时间函数的参考文档)的条偏移量(指定时间范围内的条数)。使用iBarShift()返回的这个数作为调用iMA()时的移位参数。

法克尔弗里德里希
05-22-2020 22:25, 10:25 PM
7位...你有它的示例代码...请上传..在这里。

法克尔弗里德里希
05-22-2020 23:46, 11:46 PM
也许其他读者可以帮助我,在第一篇文章中写下关于我的问题的代码..?谢谢...

比尔恩
05-23-2020 01:07, 01:07 AM
如何(小时()== 2)emaprice = iOpen(Symbol(),PERIOD_H1,0);

sokesyallio
05-23-2020 02:27, 02:27 AM
...你有它的示例代码...请上传..在这里。
不,你在问错误的问题。如果您熟悉编程,您应该能够将这些概念转换为代码。如果你想立即获得上次2点的EMA值,那么你有多种选择,这取决于你想要做什么。每个以小写字母开头的函数都有一个移位作为最后一个参数,这意味着在指定的时间范围内当前小节的小节数。时间函数的时间总是以POSIX时间戳的形式给出,它们是自遥远的过去一段固定日期以来的秒数,因此您可以简单地加上或减去60或3600的倍数,以分钟或小时为单位向前和向后移动,以创建新的时间戳。您可以使用iTime(Symbol(),PERIOD_H1,0),然后应用TimeHour()来获取当前H1栏的确切时间戳和一小时,然后使用该值(和TimeMinute())构造一个新的时间戳即2点钟的确切时刻,或直接将当前小时的差异用作H1条的偏移量(移位参数)。如果通过简单地选择H1图表上的偏移量,您可以在该栏上使用iTime()来获取它的确切时间戳,并通过iBarShift()将其转换为其他时间帧的偏移量,从而找到2点钟的H1栏。在这两种情况下,您需要执行额外的检查以排除周末晚上的特殊情况。另一种选择是让它运行并等待直到它恰好是2点,方法是检查每个时间点的当前时间并仅在小时()第一次返回2时存储当前的EMA值(存储当前的EMA值)最后返回Hour()某处的值,仅在实际更改时才起作用)。如果以上所有内容都超出了你的理解范围,并且你不知道如何在代码中表达这些东西,那么你应该首先学习编程简单的hello world程序,使其更易于使用语言,并学习编写算法并在代码中表达它们。只给你几行你不能理解的代码不会帮助你。如果我告诉你水在哪里,或者你必须先学习钓鱼的技巧,你可以立即开始钓鱼。每次你饿的时候只要求其他人烤鱼就不会帮你。

法克尔弗里德里希
05-23-2020 03:48, 03:48 AM
不,你在问错误的问题。如果您熟悉编程,您应该能够将这些概念转换为代码。如果你想立即获得上次2点的EMA值,那么你有多种选择,这取决于你想要做什么。每个以小写字母开头的函数都有一个移位作为最后一个参数,这意味着在指定的时间范围内当前小节的小节数。时间函数的时间总是以POSIX时间戳的形式给出,他们...
无论如何感谢您的回复..其实我刚刚开始学习过去几个月的mql编码。我发现了一个简单的EA,订购价格来自fx论坛。在我做研究和回溯测试之后..我看到如果在特定时间使用EMA作为过滤器 /-范围点。..更好。在论坛上的许多EA代码..大多使用指标,然后应用到当前价格或打开紧密条形图作出决定......所以它与我需要的绝对不同...

法克尔弗里德里希
05-23-2020 05:09, 05:09 AM
如何(小时()== 2)emaprice = iOpen(Symbol(),PERIOD_H1,0);
它的开放酒吧价格时间为1小时... 2点。我想要的是2点EM​​A线的价格。价格可以高于,低于或接近酒吧..

sokesyallio
05-23-2020 06:30, 06:30 AM
它的开放酒吧价格时间为1小时... 2点。我想要的是2点EM​​A线的价格。价格可以高于,低于或接近酒吧..
然后,只需使用具有适当参数的iMA()用于周期和类型,而不是使用iOpen()来获取MA的值而不是开盘价。

sokesyallio
05-23-2020 07:51, 07:51 AM
其实我刚开始学习过几个月的mql编码。
你应该先学习编码(而不是mql编码)。通过编码,我的意思是如何解决问题的所有一般概念,如何以计算机可以理解的方式编写解决方案,如何调试出错的问题,如何查看代码并像计算机一样遍历它。几乎任何其他语言都比mql更适合这一点。

chesuspl
05-23-2020 09:11, 09:11 AM
嘿mondros .....如果你在小时图上运行/回测ea,除非我错了,你应该可以使用Bars或Volume [0] ......如下... .h插入代码extern int hour = 2;双移动平均; int TotalBars;/ ---/ --- int start(){//---- double ma = iMA(NULL,0,25,0,1,4,0​​); if(TimeHour(TimeCurrent())== hour(Bars> TotalBars)){movingaverage = ma; TotalBars =酒吧; }/---- return(0); }