文章 "作为创建自动化交易系统新方法的自动机编程" - 页 4 1234567 新评论 Rashid Umarov 2012.08.20 14:03 #31 Integer: 但至少我们有了这样一个通用的、可快速重新编程的东西。这个话题很适合写文章 我想很多人都会有兴趣读一读。 Vasiliy Sokolov 2012.08.20 14:04 #32 Integer:这篇文章完全没有涉及这个话题,只是说有一个开关。它是否存在并不重要,它可以通过 if 进行切换。有一次,我在写一个 EA,其中有一个非常复杂的订单系统。我必须认真分析,并列出一个状态列表:无订单、一个挂单、一个市场订单、两个挂单、一个挂单和一个市场订单,等等。只有这样,我才能克服它。但事实证明,它是一种通用的、可快速重新编程的东西。这倒是一个可以写文章的话题。 我也喜欢使用通常的 "如果"。一般来说,有两种方法:借助 if 和借助开关状态开关调用的特殊函数。问题是哪种方法更好/更简单。 Dmitry Fedoseev 2012.08.20 14:20 #33 Rosh: 也许你可以写一篇文章? 我想很多人会有兴趣读的。好的,我会的 Mykola Demko 2012.08.20 14:45 #34 C-4: 我也更喜欢使用普通的 if。一般来说,有两种方法:借助 if 和借助开关状态切换调用的特殊函数。问题是哪种方法更好/更简单。有必要看一下主题,计数器在选择解决方案时更快,但 if 更容易调用。如果有很多嵌套计数器,那么 if 会更快,因为调用一次 if 比调用一次 switch 便宜。但如果每一级都有多个解决方案,则 switch 更合适。 Гребенев Вячеслав 2012.08.20 15:59 #35 abolk:这是新事物。任何 TS(无一例外)都是基于对 TS 状态的分析和清晰理解。最简单的状态: 开仓/平仓/修改订单等信号的处理,等等。如果 "不清楚智能交易系统的当前状态",那么它就绝对不是智能交易系统,也绝对不是程序,与智能交易系统相关的 "算法 "一词应被永远划掉并遗忘。市场信息来得晚,服务器和计算机上的软件可能(而且很可能)出错,订单可能因无数原因而无法执行,与供应商的网络连接可能闪烁,电力可能随时中断(请记住冠军赛的故障和重启)。不确定因素多得数不胜数。专家顾问或算法应将所有这些因素考虑在内。不可能指望服务器、软件、通信、市场、操作员、电力都能完美运行。因此,"专家顾问 "永远不知道订单、市场、通信、电力的当前状态,而 "专家顾问 "或算法必须在模糊条件下仍能正确工作。 Andrey F. Zelinsky 2012.08.20 16:06 #36 Virty:市场信息来得晚,服务器和计算机上的软件可能(而且很可能)出错,订单可能因无数原因而无法执行,网络--与供应商的连接--可能闪烁,电力可能随时中断(还记得冠军赛上的故障和重启)。不确定因素太多了。专家顾问或算法应将所有这些因素考虑在内。不可能指望服务器、软件、通信、市场、操作员、电力都能完美运行。因此,"专家顾问 "永远不知道订单、市场、通信、电力的当前状态,而 "专家顾问 "或算法仍必须在模糊条件下正确工作。胡说八道。把所有东西混为一谈。- 检查可能的报价延迟; - 经纪人拒绝执行订单; - EA 的非正常重启 - 这些都是 EA 清晰明确的状态 - 作为识别每种状态的结果 - 履行相应的功能- 如果某些功能没有针对某些可能的状态提供 - 这并不意味着 "模糊工作状态" - 只是 EA 没有分析(根据其清晰明确的算法)这种状态。任何程序(包括智能交易系统)都是按照预先确定的明确算法运行的。任何程序的工作中都不存在模糊的、未定义的操作。否则,就会出现 "冻结 "状态。我们知道,程序的 "冻结 "是算法错误,而不是虚无缥缈的模糊性造成的。 secret 2012.08.20 19:14 #37 Virty: 对于真正的智能交易系统来说,不可能明确定义状态。内部状态是确定无疑的,但服务器上的头寸状态可能是未知的,可能是延迟知道的,也可能处于不明确的状态(有些订单和请求被执行,有些没有被执行,鬼知道为什么)。 Virty: 不确定性因素绰绰有余。智能交易系统或算法应考虑到所有这些因素。不可能指望服务器、软件、通信、市场、操作员、电力都能完美工作。因此,"专家顾问 "永远不会知道订单、市场、通信、电力的当前状态。 不存在不确定性。只有程序员没有考虑到的错误。 "不知道"、"状态不明确 "和其他状态一样,都是正式状态。当然,必须考虑到它们,否则别无他法。 如果你写下一行 "c = a + b",这就是理论编程,只能在学校课程中接受。但当你为一个真实的工业工厂编程时,像 "c = a + b "这样一个有用的操作需要 100500 次检查操作,以确认一个输入确实是 "a",另一个输入确实是 "b",你还必须确保 "a "和 "b "在加法过程中没有改变,如果突然 "c "没有达到输出,操作应被识别为错误,一切都应回滚,等等。等等。欢迎来到现实世界 )))) Anatoli Kazharski 2012.08.20 19:17 #38 bas:没有不确定因素。有的错误是程序员没有考虑到某些因素。"不知道"、"状态不明确"--与其他状态一样,这些都是正式状态。当然,必须考虑到它们,否则别无他法。 如果你写了一行 "c = a + b",这是理论编程,只能在学校课程中接受。但是,当你为一个真实的工业工厂编程时,像 "c = a + b "这样一个有用的操作需要另外 100500 次检查操作,以确认一个输入确实是 "a",另一个输入确实是 "b",而且你还必须确保 "a "和 "b "在加法过程中没有发生变化,如果突然 "c "没有到达输出端,则该操作应被识别为错误,一切都应回滚,等等。等等。欢迎来到现实世界 ))))。 这个比喻不错。))但尽管如此,你必须记住,我们仍然不可能考虑到所有事情。即使是大自然也会犯错,也会以变异的形式失误。当然,追求完美是必要的。)) Mykola Demko 2012.08.20 22:48 #39 tol64: 这个比喻不错。))不过,说了这么多,我们也不能忘记,无论如何,不可能把所有事情都解释清楚。即使是大自然也会犯错,也会以变异的形式失误。当然,我们应该追求完美。))大自然不会犯错,因为它根本不在乎。是我们提出了合理的理论。大自然是一种无意识的东西,因此不会遵循谁对谁错。 Anatoli Kazharski 2012.08.21 10:27 #40 Urain:...大自然是无意识的,因此...... 嗯,这也只是一种理论,我们还不能确定。))) 1234567 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
这篇文章完全没有涉及这个话题,只是说有一个开关。它是否存在并不重要,它可以通过 if 进行切换。
有一次,我在写一个 EA,其中有一个非常复杂的订单系统。我必须认真分析,并列出一个状态列表:无订单、一个挂单、一个市场订单、两个挂单、一个挂单和一个市场订单,等等。只有这样,我才能克服它。但事实证明,它是一种通用的、可快速重新编程的东西。这倒是一个可以写文章的话题。
也许你可以写一篇文章? 我想很多人会有兴趣读的。
好的,我会的
我也更喜欢使用普通的 if。一般来说,有两种方法:借助 if 和借助开关状态切换调用的特殊函数。问题是哪种方法更好/更简单。
有必要看一下主题,计数器在选择解决方案时更快,但 if 更容易调用。
如果有很多嵌套计数器,那么 if 会更快,因为调用一次 if 比调用一次 switch 便宜。
但如果每一级都有多个解决方案,则 switch 更合适。
这是新事物。任何 TS(无一例外)都是基于对 TS 状态的分析和清晰理解。最简单的状态: 开仓/平仓/修改订单等信号的处理,等等。
如果 "不清楚智能交易系统的当前状态",那么它就绝对不是智能交易系统,也绝对不是程序,与智能交易系统相关的 "算法 "一词应被永远划掉并遗忘。
市场信息来得晚,服务器和计算机上的软件可能(而且很可能)出错,订单可能因无数原因而无法执行,与供应商的网络连接可能闪烁,电力可能随时中断(请记住冠军赛的故障和重启)。不确定因素多得数不胜数。专家顾问或算法应将所有这些因素考虑在内。不可能指望服务器、软件、通信、市场、操作员、电力都能完美运行。
因此,"专家顾问 "永远不知道订单、市场、通信、电力的当前状态,而 "专家顾问 "或算法必须在模糊条件下仍能正确工作。
市场信息来得晚,服务器和计算机上的软件可能(而且很可能)出错,订单可能因无数原因而无法执行,网络--与供应商的连接--可能闪烁,电力可能随时中断(还记得冠军赛上的故障和重启)。不确定因素太多了。专家顾问或算法应将所有这些因素考虑在内。不可能指望服务器、软件、通信、市场、操作员、电力都能完美运行。
因此,"专家顾问 "永远不知道订单、市场、通信、电力的当前状态,而 "专家顾问 "或算法仍必须在模糊条件下正确工作。
胡说八道。把所有东西混为一谈。
- 检查可能的报价延迟; - 经纪人拒绝执行订单; - EA 的非正常重启 - 这些都是 EA 清晰明确的状态 - 作为识别每种状态的结果 - 履行相应的功能
- 如果某些功能没有针对某些可能的状态提供 - 这并不意味着 "模糊工作状态" - 只是 EA 没有分析(根据其清晰明确的算法)这种状态。
任何程序(包括智能交易系统)都是按照预先确定的明确算法运行的。任何程序的工作中都不存在模糊的、未定义的操作。否则,就会出现 "冻结 "状态。我们知道,程序的 "冻结 "是算法错误,而不是虚无缥缈的模糊性造成的。
对于真正的智能交易系统来说,不可能明确定义状态。内部状态是确定无疑的,但服务器上的头寸状态可能是未知的,可能是延迟知道的,也可能处于不明确的状态(有些订单和请求被执行,有些没有被执行,鬼知道为什么)。
不确定性因素绰绰有余。智能交易系统或算法应考虑到所有这些因素。不可能指望服务器、软件、通信、市场、操作员、电力都能完美工作。因此,"专家顾问 "永远不会知道订单、市场、通信、电力的当前状态。
不存在不确定性。只有程序员没有考虑到的错误。
"不知道"、"状态不明确 "和其他状态一样,都是正式状态。当然,必须考虑到它们,否则别无他法。
如果你写下一行 "c = a + b",这就是理论编程,只能在学校课程中接受。但当你为一个真实的工业工厂编程时,像 "c = a + b "这样一个有用的操作需要 100500 次检查操作,以确认一个输入确实是 "a",另一个输入确实是 "b",你还必须确保 "a "和 "b "在加法过程中没有改变,如果突然 "c "没有达到输出,操作应被识别为错误,一切都应回滚,等等。等等。欢迎来到现实世界 ))))
没有不确定因素。有的错误是程序员没有考虑到某些因素。
"不知道"、"状态不明确"--与其他状态一样,这些都是正式状态。当然,必须考虑到它们,否则别无他法。
如果你写了一行 "c = a + b",这是理论编程,只能在学校课程中接受。但是,当你为一个真实的工业工厂编程时,像 "c = a + b "这样一个有用的操作需要另外 100500 次检查操作,以确认一个输入确实是 "a",另一个输入确实是 "b",而且你还必须确保 "a "和 "b "在加法过程中没有发生变化,如果突然 "c "没有到达输出端,则该操作应被识别为错误,一切都应回滚,等等。等等。欢迎来到现实世界 ))))。
这个比喻不错。))不过,说了这么多,我们也不能忘记,无论如何,不可能把所有事情都解释清楚。即使是大自然也会犯错,也会以变异的形式失误。当然,我们应该追求完美。))
大自然不会犯错,因为它根本不在乎。是我们提出了合理的理论。
大自然是一种无意识的东西,因此不会遵循谁对谁错。
...
大自然是无意识的,因此......