Вообще кейс не сложный, за часик написал запрос, пофиксил и потестил, просто захотелось зайти в старый добрый жж.
Прецедент: раз в сутки-двое курс USDC-USDT подскакивал кратно и сразу падал. Связано ли это с багом или ошибкой не понятно, но kucoin и передавал именно такую информацию и её же отображал официально. В любом случае, мои расчётные показатели тех анализа фиксировали скачок и начинали расти.
Данные на сайте kucoin
Скрин уже у себя - после частичной обработки данных и тех. анализа. Тут другой интервал дат и масштаб, но смысл такой же - есть скачки
Как следствие, когда программа решалась что-то купить, она смотрела на показатель и цену выставляла больше, чем 99.9% цены на рынке, те просто не сможем скорее всего продать.
Решения видел два:
1. Показатели считать, исключая скачки. Но тут не понятно если будет наплыв скачков и из редких скачков они перейду в постоянные и потом в рост?
2. Считать такие случаи аномальными и даже если мы прошли все проверки при расчёте цены покупки и цены продажи, доп. проверять, что она не выше 99% по кол-ву всех ордеров, те брать персинтель.
Наверно можно было поковыряться с первым способом, но я пошёл по второму: он проще, быстрее и понятней + я не готов рисковать деньгами на таких аномалиях, лучше подождать / органичить цену продажи.
Итого, спустя несколько часов, появился ордер на покупку, потом - на продажу, который упёрся в потолок по алгоритму максимальной цены продажи с нашим новым персинтелем (как же мне это слово слух режет, но оно хорошо отображает суть).
Да, я тестю на копейках, точнее на центах, пока алгоритм не отладил, что не спустить много денег