DCA逻辑的python程序

rryofs0p  于 2023-04-19  发布在  Python
关注(0)|答案(1)|浏览(102)

我正在做一个DCA交易项目。我有一些金额'X',我需要将该'X'金额分为'Y'部分。每个'Y'部分应具有'Z'的比例或比率。我想要的输出是'Y'部分与'X'的分割金额

X = 1000
Y = 4
Z = 2

则输出将为

66.66, 133.33, 266.66, 533.33

说明:每个前面的数字是前一个数字的两倍或2倍(Z),分为4部分(Y),它们的总和几乎是1000(X)
实施例2:

X = 1000
Y = 5 
Z = 1

则输出为

200, 200, 200, 200, 200

说明:每个前面的数字是相同的或1倍(Z)的前一个数字,并分为5部分(Y)和他们的总和几乎是1000(X)
实施例3:

X = 1000
Y = 6
Z = 1.5

则输出为

48.12, 72.18, 108.27, 162.4, 243.6, 365.41

说明:每个前面的数字几乎是前一个数字的1.5倍(Z),分为6部分(Y),它们的总和几乎是1000(X)

von4xj4u

von4xj4u1#

您可以执行以下操作:

X = 1000
Y = 4
Z = 2

n_parts = sum([Z ** i for i in range(Y)])

part_size = X / n_parts

output = [part_size * Z ** i for i in range(Y)]

print(output)

输出:

[66.66666666666667, 133.33333333333334, 266.6666666666667, 533.3333333333334]

这段代码找到“零件尺寸”,然后将每个输出乘以i的幂,因此连续的输出比上一个大Z倍。

相关问题