五年前,一个主意打动了我。 我决定模拟尽可能多的全球经济,以便确切地了解股票,债券,汇率等的动态变化。 只有一个小问题,所有这些的模型都不存在。 更糟糕的是,数十年来,经济学家一直在争论,他们最长的计量经济学模型中的哪一个至少近似正确地描述了这些复杂的过程。 因此,我没有尝试在多方面的现实中建立虚拟的(当然是疯狂简化的)模型,而是走了一条概念上不同的道路-在微观层次上对代理进行建模,以便在为生存而进行的无休止的斗争中,他们通过反复试验达到平衡状态,在宏观层次上表达为价格,费率等动态
我的研究结果描述如下。 为了进行可视化,我记录了代理的运动,该视频中的每个像素都隐藏了一个神经网络,即 代理商在残酷的利润和清洁度世界中努力与自己的同类竞争生存的大脑。
为什么对于例如围绕“贸易战”的当前争端根本不容易理解这一点。 一些人(大多数是专业经济学家)说,关税最终会损害整个经济。 其他人则认为该国将受益。
没有事实可以检验和证明,因为在其他条件相同的情况下,没有人可以对同一经济体进行实验。 鉴于以下所述的方法可让您控制条件并获得解决方案好处是否存在的证据。
内容:
- 概念的一般描述
- 原型实施说明(PoC)
- 发展方向
1.概念的一般描述
尽管已经对经济运行的基本原理有了相当好的理解,但是在实践中运用知识仍然存在很大的困难。
例如,存在以下有关汇率形成原理的模型(理论):
- Obstfeld-Rogoff模型
- 多恩布施模型
- Frenkel-Mousse货币模型
这不是完整列表。 而且,相同的因素,例如不同模型中赤字的增加,就其对汇率的影响而言,却给出了相反的方向。 似乎比查看预算赤字的动态并将其与汇率进行比较容易吗?
在实践中,这种方法的困难与“组合爆炸”问题有关,当数百个多方向因素生效时,尽管仍可以某种方式理解它们各自的作用,但几乎无法计算其结果。 由于在现实生活中不可能进行受控实验来固定除一个参数以外的所有参数,因此情况变得复杂。
您可能会认为汇率是一件非常复杂的事情,但它涉及最基本和关键的概念,例如通胀。 这是主要参数,全世界几乎所有中央银行都被要求进行监管。 似乎很久以前,成千上万的理论科学家和实践者必须了解这种现象的机理。 但是,丹尼尔·塔努洛(Daniel Tanullo)是美联储系统(美国中央银行)董事会成员,他在2017年写道:“
我们仍然没有实时有效的通货膨胀动态理论 。”
同时,通货膨胀是美联储决定提高或降低关键利率的主要理由之一,这对全球许多万亿美元的股票和债券市场产生了巨大影响。
因此,对宏观经济运作原理的理解使得有可能应用正确的模型,从而有效地预测形势的发展。
为了实现这种理解,有必要实施一个大规模的经济模型,其中包括现实生活中存在的所有主要因素和产业。 该模型与现有模型之间的主要区别在于放弃了对明显“正确”结果进行预测的尝试。 取而代之的是,在本文中,我们使用微观层面上的代理商进化斗争方法,当错误的决策导致从基因库中淘汰代理商时,那些导致正面财务结果的决策被保存并使用遗传算法成功分配。
换句话说,正如真实市场经济的发展一样,所提出的方法实现了竞争和持续发展的原则,拒绝了那些做出无效决定的人。 并且已经研究了这场战斗中将要发生的事情,我们将能够判断在给定条件下什么是平衡状态。
2.可用原型的描述
为了测试该概念的可操作性,即 有证据表明,从微观上讲,行为人原则上仅能达到一个平衡状态-为了生存,就建立了一种非常简化的模型(与实体经济相比),如下所述。
这是代理商居住的世界- 居民,每个居民代表一个单独的神经网络,该网络分析周围的现实并做出某些决定。 在启动程序时,将使用随机值初始化神经网络,只有那些偶然“弄清楚”如何获取资源并将其基因繁衍后代的神经网络初始化给后代,这与我们美好的客观现实中发生的情况类似。

这些居民中的每一个都得到一定数量的钱。 该代理人还是以下两个国家之一的居民:有条件的“美国”或“欧元区”。 每个国家都有自己的货币:“美元”和“欧元”。 代理商有能力生产两种类型的商品之一:“奶酪”和“葡萄酒”。
在每个国家/地区,约有50%的经纪人是“女孩”,他们知道如何很好地生产奶酪。 如果有酒,他们做得特别好。 他们自己也知道如何酿造葡萄酒,但结果对他们来说却很糟糕。 即 每个商品的质量都有一个衡量标准(从0到100%),如果女孩们做奶酪但没有葡萄酒,那么质量是10%,但是用乙烯基,一切都是100%。
代理商的后半部分是男孩,他们
躺在沙发上很好地酿酒。 特别是如果以前吃过奶酪。 而且它们的奶酪制作不好,通常来说,关于女孩的一切都是对称的。
随着时间的流逝,商品往往会变质。 每天产品质量都在下降。 为了生命并成功地传播,每个代理商必须消费其不知道如何生产的产品。 即 如果代理商能很好地生产奶酪,那么对他来说最有效的方法就是出售奶酪和购买葡萄酒。 如果您将模型投影到现实生活中,那么我们可以说面包师可以制作出优质的bun头并成功出售,但是为了获得幸福,他需要伏特加,鲱鱼和车库,因为 有些bun头做不到。
另外,代理商可以交易货币。 例如,来自欧洲的代理商可以以美元出售所生产(甚至是以前购买的)奶酪,然后将其换成欧元并为其购买食物。 所有交易都是通过提交拍卖申请进行的。 该应用程序指示代理商想要出售(或购买)哪种产品,期望的价格,质量和准备转移的增量。 代理根据神经网络的命令做出所有这些决定。 即 有关周围世界的信息,例如:
- 当日的当前汇率(即不是变化的历史记录,而是在上次举行的会议期间设置的汇率);
- 全球售出的商品数量,产品的平均价格和平均年龄。
代理会收到有关其自身状况的信息:
- 他有多少货币(以及以多少价格购买了)
- 多少产品,产品的质量,价格等
- 自己的健康
神经网络处理所有输入信息并发布决策,例如:生产多少,以什么价格出售,以哪种货币出售,以哪种汇率将一种货币兑换为另一种货币等。
如果代理有效地行动,也就是说,它能够生产出无法生产和消费的产品,那么它将获得“活力”。 维持任何活动都需要这种活力,包括生殖能力特别需要大量能量。 如果有两个不同性别的代理人,那么他们可以做出决定(将孩子从屏幕上移开)做爱并生下另一个代理人。
每过一天,生活就变得越来越困难(需要更多的生命力),当他们的供应用完时,经纪人死亡,并将累积的货币供应转移给他的继承人。
此实验中的关键事实是,系统中的美元和欧元数量受到严格限制,货币总数的比例约为1到3。代理商本身对此一无所知。 他们手上只有一定数量,他们不知道整个经济中有多少钱在流通。 即 他们没有被告知应该以什么速率兑换货币,实际上他们自己设定了所有价格。 我们知道,拥有全部信息的主体达到均衡过程的能力是3比1,这证明了没有老师就可以找到有效解决方案的可能性这一概念的证明。
换句话说,如果代理商通过简化模型(两个国家,两种货币,两种商品)的自然选择而发现均衡汇率,那么他们很可能可以在更接近现实世界的模型中进行相同的操作。
在下面的图片中,我们看到欧元在欧元区内部走动了多少,欧元向外部走了多少(即在本例中为美国)。 我们对美元也有同样的认识。

起初,快速的动态与实现的特殊性有关(这种方式更容易实现),并且不起作用。 此刻,特工们至少学会了走路和繁殖。 在下面的图片中,我们看到代理商形成的两种货币的货币供应量的真实比率(红线)和平均汇率(基于当天所有交易的结果)。

可以看出,一些徘徊后的平均交易率达到了目标水平。 目标水平是红线,即 货币数量的实际比率,而该信息不适用于代理商。
但是,到目前为止,我们没有信心这不是偶然的。 更改实验条件,让金额比大约为1到4.3,然后查看在这种情况下会发生什么:

再次,代理达到平衡值。 现在,看一下图表,似乎所有这些话都没有说,但实际上,花了数年的时间使这一过程开始收敛。 尤其是,事实证明代理的数量起着至关重要的作用,当代理的数量相对较少时,该过程变得不稳定得多,并且为了解决这个问题,我们不得不编写同时在三台PC上运行的分布式应用程序。
主要困难在于仅增加代理数量是不够的,成功的关键在于需要集群。 换句话说,事实证明不是在一个公共空间中开发100个(有条件数量的)代理是有效的,而是将它们分成10个“城市”(每个10件)。 即 交易大厅仍然是全球性的,任何代理人都可以与其他任何人进行交易,但是遗传密码在其集团内部发展。 仅在此条件下,过程才开始收敛到平衡。
以下是工作版本中一些最重要的参数:
- 60个城市
- 这座城市有5,000名居民
- 4个神经网络块(再生产,生产,商品贸易,货币交易)
- 神经网络是直接的,两层的,具有正则化的(怀疑LSTM会更好地工作)
3.发展方向
如果仍然不太清楚为什么需要所有这些,请尝试回答以下问题-在以下情况下,欧元/美元汇率将如何变化:

现在我们来考虑一下中国,加拿大,日本等的影响。 当然,我们可以用VAR回归的形式来计算这一点(仅完成得很少,请参见Tarullo的评论),但是,首先,这是对实际过程的无穷简化,其次,已知组合的数量比潜在组合小几个数量级。 因此,您可以想象这种模型的质量。
对此的一种替代方法是仅使用更多的计算能力在微观级别上对实际过程进行仿真。 如果事实证明,许多发行的结果将收敛于相同的解决方案,并且将通过实践中的观察得到证实,那么对于投资者和中央银行监管机构而言,这将是一个不可替代的强大工具。
显然,为了使宏观经济体系接近现实,需要更多的模块。 有必要开发一种可以在整个集群(同时在所有节点上)上以分布式模式运行的应用程序体系结构,并实现以下功能:
- 代理人是个人。 他们可以学习,即提高生产力。 他们可以在代理商,公司,银行或国家机构找到工作。 他们可以购物,生病,退休,存款或贷款。 他们可以购买公司(公司)的股份,即 成为股东。
- 代理商-雇用个人并向其支付薪水的公司(公司)。 制成品已上市。 他们可以存款或贷款。 能够缴税并逃税。 企业可以生产商品和服务,例如:食物,衣服,运输,住房,石油,固定资产,娱乐,私人药品。
- 代理商-银行,提供存款和贷款。 雇用雇员(个人代理人),与中央银行互动。
- 财政部-由直接管理(即不通过神经网络建模)。 设置税法(增值税,个人所得税,社会税,公司所得税,进出口税等)。 确定医疗,教育,国防和养老金领域的支出水平。 发行政府债券。 所有这些值均由政府机构发布,并外生引入模型中。
- 中央银行-也是外生参数,例如产生和消毒货币供应的操作。 关键出价管理。
- 国家机构是实施公共服务(健康,教育,国防,执法)的个人的特定代理的集合。
- 司法制度是模型中的混乱程度。 它是一组增加或减少业务风险的系数。 例如,系数为0.1意味着由于收购者的接管而导致公司亏损的可能性为10%。 或不公平的税收评估等
- 与货币,股票,债券,货物,职位空缺,金融服务(贷款/存款)进行交易的场所。
- 辅助外生参数:石油储量,经商难易程度,平均寿命等。
需要在几个最大的经济体(美国,中国,欧元区等)中实施这种功能。 应根据国际研究的结果(国际货币基金组织,联合国等)调整代理人数,主要参数,比率等的比例。
关键困难:为分布式事务和操作实现快速可靠的算法。 如果按顺序执行所有操作,则没有资源足以使所有上述功能在可接受的时间内正常工作。 必须提供高可伸缩性,以允许“实时”连接额外的计算能力,以及在开发过程中尽可能简单地添加功能。
当然,所有这些都需要BigData技术。 该原型是用C#编写的,但是今天将选择易于扩展的SpringBootYarn + HBase。 实际上,我认为尚未实现这一目标的主要原因是,就硬件和Hadoop等廉价技术的良好专业知识而言,它需要大量资源。 好吧,这个想法本身也不是小事。 至少我从未在任何地方见过类似的东西。 借此机会,如果有人熟悉这个方向的工作,我请集体思维抛出联系。
当然,如果到目前为止,在您的空闲时间一直保持热情,以确保该概念有效,那么进一步的开发就需要全职的大量财务投资。 老实说,我不相信从PoC转变为成熟模型所需的数百万美元投资。 当我开始时,我认为这将需要少一个数量级的资源。
但是,我坚信有一天这个想法一定会找到体现。至少,当进行这种计算所需的铁便宜得多时,不仅金融(和缓慢)的巨头都可以使用,而且像我这样的发烧友也可以使用。抒情结论:
金钱固然很棒,但坐在漫长的冬天的夜晚,看着我意志中的这些小动物蜂拥而至,会带来一些特别的乐趣。从成为创造者的感觉来看,虽然它是原始的,但仍然是令人愉悦的。这种短暂的像素震颤很可能是一场爱情舞蹈,旨在向小女孩展示我们的男性对生命力的慷慨奉献,以及他对她而言是什么有利可图的聚会。而且我什至不能排除他们觉得自己是某种无法表达的像素含义...