我应该怎么做才能使我的二维数组(树形结构)最优化?

时间:2019-05-20 10:14:30

标签: python optimization scipy tree solver

我有一个数据树S(如图)

树结构:

enter image description here

,还有一棵对冲策略H(与另一棵树的结构相同)。

现在,我想从对冲活动中计算现金流量,并找到返回最大利润的最优对冲数组H。

计算现金流量的规则是: 1.对于0年,H [0,0] * S [0,0] 2.去年的一个股票价格在下一年有3种可能的结果。如图所示,一个母节点有3个子节点。 (如图所示) 3.对于第x年(x> 0),每个子节点的现金流量为(H [childnode,x] -H [mothernode,x-1])* S [childnode,x] 4.最后,我将总结每条路径的现金流并将其最大化。

总结现金流量的理想功能应如下:

def现金流量(H):

此处现金流量的计算已经完成

回报(最终现金流量)

我已经计算正确了。但是当我尝试在scipy中使用优化时,scipy求解器不会收到非1D数组作为输入。如果必须将当前的树数组展平为一维数组,则会丢失time(column)索引。这将破坏母节点和子节点之间的计算。

那么是否有建议获得最佳阵列H?新的求解器还是新的数据结构?

PS:excel求解器可以轻松解决问题,但是我需要在python中创建一个例程。

0 个答案:

没有答案