初学者的问题 MQL5 MT5 MetaTrader 5 - 页 879 1...872873874875876877878879880881882883884885886...1503 新评论 Alexey Viktorov 2018.06.04 19:29 #8781 lil_lil:谢谢你。 现在怎么了? 我建议从HistorySelectByPosition 开始,而你却把它塞进了ifs的深处......。 在一个净值账户中,每个符号只能有一个头寸。获得头寸ID,获得参与形成此头寸的交易列表,并按交易方向 和订单类型进行统计。 Artyom Trishkin 2018.06.04 19:37 #8782 Alexey Kozitsyn:Artyom,我重复一下问题,请回答。没有看到这个问题 :) 说实话--我不记得了,但我认为它在MT5中是有效的--不是吗? 但在测试器中,我把待处理的订单...而我是用鼠标工作的。但我可能弄混了,我在真实的图表上用鼠标工作,在测试器中使用按钮...... 我不会猜测--大约半年前我把我的图书馆全部拆成了小螺丝,我不会再快速检查了。我已经把它的重建工作推迟到了秋天。因此,在测试器中检查事件模型OnChartEvent() 的工作会更快。但我还没有时间去做 - 抱歉 :) [删除] 2018.06.04 19:41 #8783 Artyom Trishkin:没有看到这个问题 :) 说实话--我不记得了,但我认为它在MT5中是有效的--不是吗? 但我一直把待定的订单放在测试器中...而我是用鼠标工作的。但很可能是我搞混了,我在真实的图表上用鼠标工作,而在测试器中使用按钮......。 我不会猜测--大约半年前我把我的图书馆全部拆成了小螺丝,我不会再快速检查了。我已经把它的重建工作推迟到了秋天。因此,在测试器中检查事件模型OnChartEvent()的工作会更快。但我还没有时间去做 - 抱歉 :)这里有所有的测试代码。 switch( id ) { default: Print( __FUNCTION__,": id = "+EnumToString( (ENUM_CHART_EVENT)id ) ); } 不幸的是,在测试器中没有反应。在OnChartEvent()函数 中。从专家顾问处调用。 Artyom Trishkin 2018.06.04 19:46 #8784 Alexey Kozitsyn:整个测试代码都在那里。 不幸的是,在测试器中没有反应。在OnChartEvent()函数 中。 而CHART_EVENT_MOUSE_MOVE=true被设置了? lil_lil 2018.06.04 19:47 #8785 Alexey Viktorov:我建议从HistorySelectByPosition 开始,但你把它塞进了ifs的深处。 在一个净值账户中,每个符号只能有一个头寸。获取头寸ID,获得形成此头寸的交易列表,并按交易方向 和订单类型进行统计。我这样做,是因为我想做一个通用的计数功能,用于净值化和对冲,还是不可能? [删除] 2018.06.04 19:50 #8786 Artyom Trishkin: CHART_EVENT_MOUSE_MOVE=true是否设置?没有,但这不太可能解决问题,因为ctrl、shift和其他键都被按下了......。没有任何反应。 Artyom Trishkin 2018.06.04 19:50 #8787 lil_lil:陷入了,因为我想做一个通用的计数功能,用于净值化和对冲,还是不可能?这是有可能的。但方法是不同的,需要先进行适当的规划,而不是把所有东西都倾倒在一行代码里...... Artyom Trishkin 2018.06.04 19:52 #8788 Alexey Kozitsyn:没有,但这不太可能解决问题,因为ctrl、shift和其他键都被按下了......。没有任何反应。总之,我现在真的没有时间做实验--我有自己的事情等着做。 也许我真的把它忘了。但我已经在测试器中设置了时间限制。这是很有可能的--只是同样的按钮。我还知道,我是用鼠标设置的。但也许在现场的图表上也是如此...... lil_lil 2018.06.04 20:05 #8789 Artyom Trishkin:可能是这样。但方法是不同的,需要首先进行适当的规划,而不是把所有东西都倾倒在一行代码中......所以我暂时先把它分开来做。 我错过了什么? int GetNum(const string aSymbol) { int count=0; if(PositionSelect(aSymbol)) { long pos_id=long(PositionGetInteger(POSITION_IDENTIFIER)); if(pos_id>0) { if(HistorySelectByPosition(ulong(pos_id))) { int deals=HistoryDealsTotal(); for(int i=0; i<deals; i++) { ulong deal_ticket=HistoryDealGetTicket(i); ulong order_ticket=ulong(HistoryDealGetInteger(deal_ticket,DEAL_ORDER)); if(order_ticket>0) { long deal_entry=long(HistoryDealGetInteger(deal_ticket,DEAL_ENTRY)); if(deal_entry==DEAL_ENTRY_IN) { if(m_position.PositionType()==POSITION_TYPE_SELL) { count++; } } } } if( count > 0 ) return(count); } else { Print("Не возможно получить историю позиции по символу ",aSymbol); } } else { Print("Не возможно определить идентификатор позиции по символу ",aSymbol); } } return( 0 ); } //////////// lil_lil 2018.06.04 21:03 #8790 首先它计数正确,然后,当5个限制性卖出被激活时,它在评论中写了6个。第六个是怎么来的? 1...872873874875876877878879880881882883884885886...1503 新评论 原因: 取消 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
谢谢你。
现在怎么了?
我建议从HistorySelectByPosition 开始,而你却把它塞进了ifs的深处......。
在一个净值账户中,每个符号只能有一个头寸。获得头寸ID,获得参与形成此头寸的交易列表,并按交易方向 和订单类型进行统计。
Artyom,我重复一下问题,请回答。
没有看到这个问题 :)
说实话--我不记得了,但我认为它在MT5中是有效的--不是吗?
但在测试器中,我把待处理的订单...而我是用鼠标工作的。但我可能弄混了,我在真实的图表上用鼠标工作,在测试器中使用按钮......
我不会猜测--大约半年前我把我的图书馆全部拆成了小螺丝,我不会再快速检查了。我已经把它的重建工作推迟到了秋天。因此,在测试器中检查事件模型OnChartEvent() 的工作会更快。但我还没有时间去做 - 抱歉 :)
没有看到这个问题 :)
说实话--我不记得了,但我认为它在MT5中是有效的--不是吗?
但我一直把待定的订单放在测试器中...而我是用鼠标工作的。但很可能是我搞混了,我在真实的图表上用鼠标工作,而在测试器中使用按钮......。
我不会猜测--大约半年前我把我的图书馆全部拆成了小螺丝,我不会再快速检查了。我已经把它的重建工作推迟到了秋天。因此,在测试器中检查事件模型OnChartEvent()的工作会更快。但我还没有时间去做 - 抱歉 :)
这里有所有的测试代码。
不幸的是,在测试器中没有反应。在OnChartEvent()函数 中。从专家顾问处调用。
整个测试代码都在那里。
不幸的是,在测试器中没有反应。在OnChartEvent()函数 中。
我建议从HistorySelectByPosition 开始,但你把它塞进了ifs的深处。
在一个净值账户中,每个符号只能有一个头寸。获取头寸ID,获得形成此头寸的交易列表,并按交易方向 和订单类型进行统计。
我这样做,是因为我想做一个通用的计数功能,用于净值化和对冲,还是不可能?
CHART_EVENT_MOUSE_MOVE=true是否设置?
没有,但这不太可能解决问题,因为ctrl、shift和其他键都被按下了......。没有任何反应。
陷入了,因为我想做一个通用的计数功能,用于净值化和对冲,还是不可能?
这是有可能的。但方法是不同的,需要先进行适当的规划,而不是把所有东西都倾倒在一行代码里......
没有,但这不太可能解决问题,因为ctrl、shift和其他键都被按下了......。没有任何反应。
总之,我现在真的没有时间做实验--我有自己的事情等着做。
也许我真的把它忘了。但我已经在测试器中设置了时间限制。这是很有可能的--只是同样的按钮。我还知道,我是用鼠标设置的。但也许在现场的图表上也是如此......
可能是这样。但方法是不同的,需要首先进行适当的规划,而不是把所有东西都倾倒在一行代码中......
所以我暂时先把它分开来做。
我错过了什么?