KeyError при доступе к настроенным данным сигнала в функции обратного тестированияPython

Программы на Python
Anonymous
KeyError при доступе к настроенным данным сигнала в функции обратного тестирования

Сообщение Anonymous »

Я работаю над торговым алгоритмом и столкнулся с ошибкой KeyError при попытке доступа к столбцу в DataFrame. В частности, я столкнулся с ошибкой на этапе бэктестинга при доступе к настроенному сигналу для биржевого тикера.

Код: Выделить всё

KeyError: 'MSFT_Tuned_Signal'
Вот соответствующая часть моего кода:

Код: Выделить всё

def backtest_with_risk_management(data, tickers):
for ticker in tickers:
for i in range(len(data)):
signal = data[f'{ticker}_Tuned_Signal'].iloc[i]
# Additional logic here...
Похоже, что столбец сигнала ('{ticker}_Tuned_Signal') отсутствует в DataFrame данных для некоторых тикеров (например, MSFT), но я не знаю почему это происходит. Я уже применил фильтр Калмана для генерации сигнала, но столбец все еще не создается.
Каковы могут быть возможные причины этого и как я могу гарантировать правильность данных сигнала? генерируется и доступен во время бэктестинга?
Я применил фильтр Калмана к данным акций и ожидал, что он сгенерирует новый столбец в DataFrame для каждого тикера (например, MSFT_Tuned_Signal, GOOG_Tuned_Signal ). Фильтр Калмана, похоже, работал без ошибок, но когда я попытался получить доступ к этим столбцам в функции бэктестинга, я столкнулся с ошибкой KeyError. Я ожидал, что столбцы существуют в DataFrame, но для некоторых тикеров они отсутствуют, что приводит к ошибке.

Подробнее здесь: https://stackoverflow.com/questions/790 ... t-function

Вернуться в «Python»