Функция iBands не дает мне правильные значения - PullRequest
0 голосов
/ 15 ноября 2018

У меня проблема с моим кодом, я хочу выполнить некоторые действия, когда цена выше верхней полосы Боллинджера или ниже нижней.Но это оправдывает мои действия после, а не обычным образом, иногда это будет на 1 свечу слишком поздно или на 4 свечи после и т. Д. Но не в нужное время.

Вот что я делаю: еслиПоследний бар закрыт выше верхней полосы или ниже нижней полосы, я хочу выполнить некоторые действия.На графике я очень четко вижу, что цена закрылась выше или ниже полос, но это не исключает моих действий на свече [0] (фактическая цена) после того, как свеча [1] закрылась выше или ниже полос.Вот пример моего кода (я не пишу действия в условиях, чтобы сделать его короче и понятнее):

   double     BBlow = iBands(NULL,0,20,2,0,PRICE_CLOSE,MODE_LOWER,1);
   double     BBhigh = iBands(NULL,0,20,2,0,PRICE_CLOSE,MODE_UPPER,1);
   if (Close[1] > BBhigh)
       do this (sell for example);
   if (Close[1] < BBlow)
       do that (buy for example);
...