0
Shares
의 값이 , 0
및 -1000
이라는 제약 조건을 감안할 때 미래를 들여다보고 전체 주식 가격이 산정 된 주식을 정확히 알 수 있다면 어떻게 구현하겠습니까? 또한 1000
개의 공유로 시작하십시오. 2000
주를 1000
에서 -1000
으로 직접 반입 할 수 있으며 그 반대의 경우도 마찬가지입니다. df_trades
로를원래 데이터 프레임의 값 변경을 반영하는 새로운 데이터 프레임을 어떻게 형성 할 수 있습니까?
JPM
2008-01-02 38.47
2008-01-03 38.20
2008-01-04 37.33
2008-01-07 37.71
2008-01-08 36.21
2008-01-09 36.72
및 변환 :
나는이 같은 dataframe df_prices
을 할
if df_prices['JPM'].shift(1) > df_prices['JPM'] & curr_hold == 0:
df_orders['Order'] = 'SELL'
df_orders['Shares'] += 1000
elif df_prices['JPM'].shift(1) < df_prices['JPM'] & curr_hold == 0:
df_orders['Order'] = 'BUY'
df_orders['Shares'] -= 1000
elif df_prices['JPM'].shift(1) > df_prices['JPM'] & curr_hold == -1000:
df_orders['Order'] = 'HOLD'
elif df_prices['JPM'].shift(1) < df_prices['JPM'] & curr_hold == 1000:
df_orders['Order'] = 'HOLD'
그것은 작동하지 않습니다
Symbol Order Shares
2008-01-02 JPM NOTHING 1000
2008-01-03 JPM HOLD 1000
2008-01-04 JPM HOLD 1000
2008-01-07 JPM BUY 0
2008-01-08 JPM SELL -1000
2008-01-09 JPM HOLD 0
이 코드를 사용하여 하나. 오류 :
TypeError: cannot compare a dtyped [float64] array with a scalar of type [bool]
정확히 무엇이 문제입니까? –
어떻게 첫 번째 데이터 프레임을 두 번째 데이터 프레임으로 변환합니까? – dirtysocks45
'curr_hold'란 무엇입니까? –