我正在尝试根据Python的正订单信号来编写我的手数。以下是在excel中完成的预期输出。逻辑是:Lot_size = IF(Order_Signal = 1,然后Prior_Period_Portfolio_Value * Risk_pct / Stop_gap,elif(有效= 0,0,前期手数))risk_pct = 0.02
我很难在excel中重现此内容,特别是最后一个组件是指前一批次的大小。
这取决于您如何在Python中存储这些数据。但为简单起见,我假设每个变量都在其自己的列表中。
order_signal = [0,0,...-1,0]
stop_gap = [0.44,1.13,...1.94,9.06]
prior_period_portfolio_value = [10000,10000,...9900,9807.5]
active = [0,0,...1,0]
lot_size = [0] * len(order_signal)
risk_pct = 0.02
for i = 1:len(order_signal):
if order_signal[i] == 1:
lot_size[i] = prior_period_portfolio_value[i] * risk_pct / stop_gap[i]
elif active[i] == 0:
lot_size[i] = 0
else:
# just need to be sure this doesn't happen on the first iteration
lost_size[i] = lot_size[i-1]
我从基础应用程序开发课程(PhP)中学到的东西,然后在表格中对数据进行排序的游戏开发人员中使用了它。因此,这里的技巧是首先创建列,然后将行添加为子级。
在tkinter上,我会那样做:1-我将创建一个垂直扩展为父帧的框架
frame = Frame()
frame.pack(expand=True, fill="y")
2-我将添加水平延伸的项作为子项
entry = Entry(frame)
entry.pack(expand=True, fill="x")