Известно, что традиционный график в АД при навешивании на него индикаторов начинает страшно тормозить.
1.подтормаживание масштабирования графиков (УЖЕ ЗАГРУЖЕННЫХ)
2.дискретное отображение графика стакана (не плавно, а дискретно)
3.окна вызываются не всегда сразу (задержка 1-2сек)
Как пишут обладатели мощных процессоров (Ryzen 9 5950х, core i9-13900h) проблема железом не решается.
Да и как ей решиться? Макросом выяснил, что при каждом изменении графика (цены последней свечи), а также уменьшении или увеличении числа отображаемых свечей (т.е. при нажатии + или - на графике) происходит перерасчет значений индикаторов на всю длину истории. При этом глобальные переменные в индикаторе при каждом перерасчете индикатора обнуляются.
Мягко говоря такие расчеты излишни.
Соответственно возникла идея, в общем то я думаю не только у меня, а что если:
1) сохранять в файл значения индикатора для исторических баров, на которых индикатор уже был рассчитан и, например, подтягивать их из файла;
2) подтягивать из файла данные о последнем баре, на котором был рассчитан индикатор и если последний CurrentIndex не изменился, то не пересчитывать значения индикатора.
В таком случае мы не получаем данные индикатора на последней свече, до того момента пока она не закрылась. Зато индикатор не пересчитывается постоянно, а как только свеча закроется сразу получим данные значения индикатора,что по сути и нужно.
К сожалению знаний в программировании не хватает для реализации данного алгоритма.
Может кто-то уже сделал такое? Поделитесь пожалуйста.
