Код: Выделить всё
# Initialize variables
data['upos'] = 0
length = 14
# Calculate breakout conditions
for i in range(len(data)):
# Calculate upward breakout condition
if data.loc[i, 'ph'] and i + length < len(data): # if ph and not exceeding index limit
data.loc[i + length, 'upos'] = 0
elif i > 0:
if data.loc[i, 'Close'] > data.loc[i, 'upper'] - (data.loc[i, 'slope_ph'] * length):
data.loc[i, 'upos'] = 1
else:
data.loc[i, 'upos'] = data.loc[i - 1, 'upos']
Я пытаюсь получить результаты на основе следующих условий:
- Когда ph = True, сбросьте значение 14-й строки upos на 0.
- Иначе проверьте, если Close > Upper - Slope_ph * length -- если да, установите значение upos на 1
- если второй пункт неверен, сохраните старое значение upos
Data_Image
Подробнее здесь: https://stackoverflow.com/questions/784 ... ed-results