情景一:
假设股价初始价格为100元,
则第一次投入2000元买入的数量为20股,
第一次下降10%,价格变为90元,账户价值为20股 * 90元/股 = 1800元。
对股价来说下降了10%
对用户来说亏了10%
第二次投入3000元买入的数量为33.33股。
第二次下降12%,价格变为79.2元,账户价值为53.33股 * 79.2元/股 = 4223.36元。
对股价来说下降了20.8%
对用户来说亏了15.53%
第三次投入5000元, 买入了63.13股
第三次下降5%,价格变为75.24, 账户价值为(63.13+53.33) * 75.24 = 8762.4504
对股价来说下降24.76%
对用户来说亏了12.3755%
总结公式:
lastPrices = [1] for i in range(len(bArr)): lastPrices.append(lastPrices[-1] * (1+bArr[i])) sum = 0 for i in range(len(aArr)): sum += aArr[i]/lastPrices[i] return sum * lastPrices[-1] / np.sum(aArr) - 1, lastPrices[-1]-1 print('最终涨幅:', get_price([2, 3], [-0.1, -0.12])) print('最终涨幅:', get_price([2, 3, 5], [-0.1, -0.12, -0.05])) print('最终涨幅:', get_price([2, 3, 15], [-0.1, -0.12, -0.05]))