初学者的问题 MQL5 MT5 MetaTrader 5 - 页 852 1...845846847848849850851852853854855856857858859...1503 新评论 Aleksei Skrypnev 2018.04.26 18:14 #8511 不开启交易,哪里有错? iRSI_handle=iRSI(NULL,0,15,PRICE_OPEN); double iRSI_buf[]; ArraySetAsSeries(iRSI_buf,true); CopyBuffer(iRSI_handle,0,0,20,iRSI_buf); if (iRSI_buf[0]>60) trader.Buy(Lot); Vladimir Karputov 2018.04.26 18:25 #8512 Askr:没有打开交易,错误在哪里? 错误1:在每一个刻度线上,你创建一个新的指标HANDL 2号浅滩:(可能)地段变量的体积不正确。缺陷3:(可能)CTrade类的订单填写类型没有填写。 一般来说,终端的(或测试人员的)日志里有什么? lil_lil 2018.04.26 20:41 #8513 Kirill Belousov:该数额乘以1 SL的货币损失而如果损失是1,以BO为例。 我把这些值放进公式中,甚至没有接近相同的结果。 有什么问题吗? double lot=1.0; double koef_lot=2.0; int seriya =15; double depo=0.0; depo=(lot*(koef_lot*seriya-1))/(koef_lot-1); Comment(" depo ",depo); Aleksei Skrypnev 2018.04.27 05:44 #8514 Vladimir Karputov:差距1:在每一个刻度 上,你创建一个新的指标HANDL 2号浅滩:(可能)地段变量的体积不正确。缺陷3:(可能)CTrade类的订单填充类型未被填充。 总之,终端的(或测试者的)日志里有什么?这个代码是在onitics中 ArraySetAsSeries(iRSI_buf,true); CopyBuffer(iRSI_handle,0,0,20,iRSI_buf); 将其移至onytics。我刚刚看了这里的文章,了解到对工作来说没有区别,但在onitiket更好。但在明确自己的情况下,我更方便在1块做所有的事情,我纯粹是为了自己,同时解决我自己设定的问题(学习。) 问题出在手数上--我不得不把不是一个变量手数--和函数returnlot(因为它是一个计算手数的函数)。 现在我发现了一个错误,在批处理功能中--批处理的计算有很多小数位,结果是订单无法打开。我们需要减少不必要的字符,只留下2个。 //параметры input double StartLot=0.1; input double StartEquityLot=10000; //переменные double KoefLotEQUITY;//разница эквити double Lot; //функция расчета текущего торгового лота double LotF(double Lot) { KoefLotEQUITY=AccountInfoDouble(ACCOUNT_EQUITY)/ StartEquityLot; Lot=StartLot*KoefLotEQUITY; //функция минимального возможного лота if (Lot<0.01) { Lot=0.01; } return(Lot); } NormalizeDouble和DoubleToStr至今不能工作--写着该函数不能放在函数中,而当我把它们的工作放在函数中时,下面写着错误--我无法修复。 Vladimir Karputov 2018.04.27 05:57 #8515 Askr:这个代码是onitics的。 把它移到了ontic。我刚刚读了这里的文章--从这些文章中我了解到,对工作来说没有区别,但在安提凯特的情况下会更好。但在明确自己的情况下,我更方便在1块做所有的事情,我纯粹是为了自己,同时解决我自己设定的问题(学习。) 问题出在手数上--我不得不把不是一个变量手数--和函数returnlot(因为它是一个计算手数的函数)。 现在我发现了一个错误,在批处理功能中--批处理的计算有很多小数位,结果是订单无法打开。我们需要减少不必要的字符,只留下2个。 当我粘贴函数NormalizeDouble和DoubleToStr时,我还不能做,它说不能把函数放进去,在下面我看到有错误,我不能纠正。 在MQL5中,你只需要在OnInit中创建一个指标句柄,而且只需要一次。这是一个公理。你不能在OnTick中为每个tick创建一个指标句柄--这是不正确的。 在交易类CSymbolInfo::NormalizePrice 中,可以对手数进行正确的规范化。 Alexey Viktorov 2018.04.27 06:03 #8516 Vladimir Karputov:在MQL5中,你必须只创建一个指标句柄,而且只在OnInit中创建。这是一个公理。你不能在OnTick中为每个tick创建一个指标句柄--这是正确的。 在交易类CSymbolInfo::NormalizePrice 中,可以对手数进行正确的规范化。错了,我不反驳这一点。但是!!!。如果我们在每次打勾时都创建它,会有什么变化?甚至价值也不会改变。 Konstantin Nikitin 2018.04.27 06:05 #8517 Alexey Viktorov:错了,这一点无可争辩。但是!!!。如果你在每次打勾时都创建,会有什么变化呢?甚至价值也不会改变。这有什么意义?只是为剧本增加了很多额外的工作,仅此而已。 Vladimir Karputov 2018.04.27 06:15 #8518 Alexey Viktorov:错了,这一点无可争辩。但是!!!。如果你在每次打勾时都创建,会有什么变化呢?甚至价值也不会改变。在最近的一篇文章中,我已经表明MQL5有效地打击了MQL4风格的编码残余--在每个tick上创建句柄:内存没有被浪费,但操作速度至少有所下降。但我重申:在MQL5中以MQL4风格创建指标 的方法是不正确的。如果你切换到MQL5,这意味着必须重新建立编程风格。 Alexey Viktorov 2018.04.27 06:28 #8519 Konstantin Nikitin:这有什么意义?这只是剧本的额外工作,仅此而已。当然,没有任何意义。这是这样一个隐藏的问题drubashke:为什么类似于神经质,这是够在这里,因为它是,并包括大写字母锁? Aleksei Skrypnev 2018.04.27 07:08 #8520 也就是说,结果是一样的,但当然执行起来毫无意义,而且更忙,我从所写的内容中了解到。 我希望他们能想到在文章中写到这一点,但总的来说,显然没有理由多次做同样的事情。 但我的目标是为了理解和工作本身而写作,而不是为了优化--那是在我算账之后。 1...845846847848849850851852853854855856857858859...1503 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
不开启交易,哪里有错?
没有打开交易,错误在哪里?
错误1:在每一个刻度线上,你创建一个新的指标HANDL
2号浅滩:(可能)地段变量的体积不正确。
缺陷3:(可能)CTrade类的订单填写类型没有填写。
一般来说,终端的(或测试人员的)日志里有什么?
该数额乘以1 SL的货币损失
而如果损失是1,以BO为例。
我把这些值放进公式中,甚至没有接近相同的结果。
有什么问题吗?
差距1:在每一个刻度 上,你创建一个新的指标HANDL
2号浅滩:(可能)地段变量的体积不正确。
缺陷3:(可能)CTrade类的订单填充类型未被填充。
总之,终端的(或测试者的)日志里有什么?
这个代码是在onitics中
将其移至onytics。我刚刚看了这里的文章,了解到对工作来说没有区别,但在onitiket更好。但在明确自己的情况下,我更方便在1块做所有的事情,我纯粹是为了自己,同时解决我自己设定的问题(学习。)
问题出在手数上--我不得不把不是一个变量手数--和函数returnlot(因为它是一个计算手数的函数)。
现在我发现了一个错误,在批处理功能中--批处理的计算有很多小数位,结果是订单无法打开。我们需要减少不必要的字符,只留下2个。
NormalizeDouble和DoubleToStr至今不能工作--写着该函数不能放在函数中,而当我把它们的工作放在函数中时,下面写着错误--我无法修复。
这个代码是onitics的。
把它移到了ontic。我刚刚读了这里的文章--从这些文章中我了解到,对工作来说没有区别,但在安提凯特的情况下会更好。但在明确自己的情况下,我更方便在1块做所有的事情,我纯粹是为了自己,同时解决我自己设定的问题(学习。)
问题出在手数上--我不得不把不是一个变量手数--和函数returnlot(因为它是一个计算手数的函数)。
现在我发现了一个错误,在批处理功能中--批处理的计算有很多小数位,结果是订单无法打开。我们需要减少不必要的字符,只留下2个。
当我粘贴函数NormalizeDouble和DoubleToStr时,我还不能做,它说不能把函数放进去,在下面我看到有错误,我不能纠正。
在MQL5中,你只需要在OnInit中创建一个指标句柄,而且只需要一次。这是一个公理。你不能在OnTick中为每个tick创建一个指标句柄--这是不正确的。
在交易类CSymbolInfo::NormalizePrice 中,可以对手数进行正确的规范化。
在MQL5中,你必须只创建一个指标句柄,而且只在OnInit中创建。这是一个公理。你不能在OnTick中为每个tick创建一个指标句柄--这是正确的。
在交易类CSymbolInfo::NormalizePrice 中,可以对手数进行正确的规范化。
错了,我不反驳这一点。但是!!!。如果我们在每次打勾时都创建它,会有什么变化?甚至价值也不会改变。
错了,这一点无可争辩。但是!!!。如果你在每次打勾时都创建,会有什么变化呢?甚至价值也不会改变。
这有什么意义?只是为剧本增加了很多额外的工作,仅此而已。
错了,这一点无可争辩。但是!!!。如果你在每次打勾时都创建,会有什么变化呢?甚至价值也不会改变。
在最近的一篇文章中,我已经表明MQL5有效地打击了MQL4风格的编码残余--在每个tick上创建句柄:内存没有被浪费,但操作速度至少有所下降。但我重申:在MQL5中以MQL4风格创建指标 的方法是不正确的。如果你切换到MQL5,这意味着必须重新建立编程风格。
这有什么意义?这只是剧本的额外工作,仅此而已。
当然,没有任何意义。这是这样一个隐藏的问题drubashke:为什么类似于神经质,这是够在这里,因为它是,并包括大写字母锁?
也就是说,结果是一样的,但当然执行起来毫无意义,而且更忙,我从所写的内容中了解到。
我希望他们能想到在文章中写到这一点,但总的来说,显然没有理由多次做同样的事情。
但我的目标是为了理解和工作本身而写作,而不是为了优化--那是在我算账之后。