Представьте на минутку обычного программиста. Допустим, его зовут Вася и ему нужно сделать анимированную менюшку на сайт/десктоп приложение/мобильный апп. Знаете, которые выезжают сверху вниз, как меню у окна Windows или меню с яблочком у OS X. Вот такое. Начинает он с одного выпадающего окошка, тестирует анимацию, выставляет ease out 100% и...
不要以为我在耍小聪明,再看看这个 写战斗TC的架构。没有反馈。
有虚拟头寸,也有与虚拟性相适应的真实交易环境。
在这种情况下,如果在平台或其他会计系统中进行净额结算,甚至都不重要。
我认为这是一个非常有趣的结构,特别是对于那些无法在常规测试器上检查的高速战略。
只是,关于 "智能同步器",还不太清楚。可能他们指的是交易订单的自适应复制器,如果我理解正确的话,其任务是调整虚拟盈利能力/策略的盈利能力和市场的当前状态--流动性、执行速度等。
一般来说,这样的测试器和同步器最好不要单体内置在专家顾问中,而是作为一个单独的外部模块。
在这种情况下,任何专家顾问或几个专家顾问都可以与之连接,甚至有选择地使用最合适的信号。
我不知道只使用MQL是否现实...
所以从逻辑上讲,它是一个独立的模块。
例如,信号服务 是一个独立的模块,与TS没有任何关系。
它只是将虚拟的源头头寸(它们对你来说是虚拟的)转化为你的交易环境。
当然,好奇的是(不是最佳的),但它翻译了。
这在逻辑上是一个独立的模块。
例如,信号服务 是一个独立的模块,与TS没有任何关系。
它只是将虚拟的源头头寸(它们对你来说是虚拟的)转化为你的交易环境。
当然,好奇的是(不是最佳的),但它翻译了。
事实证明,有一个谷歌翻译器,翻译得歪歪扭扭,但如果你不需要理解它,就可以了,但如果你需要准确理解它--学习语言)。
我将满足于一个中间选择--个人的、高质量的翻译(模块),当翻译很好,而且没有必要在每个EA中写代码。
了解如何构建一个方案是需要经验的。这里的每个人都有不同的经历,因此结构化的顺序和规则将是独一无二的。此外,这些规则会随着时间的推移而改变--也就是说,几年前看似理想的结构,今天可能经不起最轻微的批评。
MQL中的程序结构是一首独立的歌曲,因为它在本质上是一个DSL,由终端的事件控制(尽管已经采取了巨大的措施,使其更接近于通用语言)。我认为,对于交易策略的描述,最好的方法是状态机,这里已经有一些关于它的文章。实际上,这个结构退化成了一个大的案例,其中有很多实现每个案例的排除法。
抽离交易任务,我通常分配一个核心部分,它对与用户互动的具体细节一无所知。其目的是提供一种方法,用数据填充自己,根据收到的数据解决问题,并输出结果。核心可能在物理上由几个文件组成,但所有的文件都必须在逻辑上相连,并且在外部只提供接收数据的方法和返回数据的方法,而没有其他。最简单的比喻是绞肉机。
我认为第二件事很重要,就是把要改变的部分(或有可能被改变的部分)本地化,并把它们分离到一个独立的抽象中。通过这种方法,我们可以在不同的机制实现之间无缝切换(例如,通过切换开仓 机制,我们可以将交易虚拟化)。不同的实现方式被方便地存储在一个具有通用名称的单独文件夹中。
项目结构将类似于一棵树,其主干(核心)由不同的子系统(子系统)组成,可改变的行为(行为)的分支从它那里分流出来。旁边会有一个望远镜(报告,图形用户界面),从必要的角度看这棵树,还有一把斧头和一把电锯(行动,图形用户界面),为我们提供与这棵树的必要互动。
为开发者服务的简单状态机
为开发者服务的简单状态机
至少给出一个近似的例子,以适用于我们的现实情况。
你真的很了不起 :) 任何策略的实施本质上都是一个状态机。
我明白了,我是根据关于charabra的文章要求提供这种机器的例子。
哦,好吧,有一篇文章,那个家伙做了一个状态机的 "模拟"。而且他还把这项技术作为最前沿的编程创新来推动)。
但我想不起这里有什么关于状态机的实质性文章。我不记得这里有。
至少给出一个适用于我们现实的粗略例子。
啊哈哈,让我想起了 "你的证据将是什么"。
只是在谷歌上搜索 "状态机",挑出我最喜欢的内容并上传到这里。
没有证明什么,也没有反驳什么。有趣的文章。
一般来说,我反对教条。 如果一个人使用它,并不意味着它将适合另一个人。
但在阅读别人的代码时,我经常遇到与状态机的类比。只是一个观察。