CreateDataSource

Страницы: 1
RSS
CreateDataSource, Простой робот
 
      Добрый день.
Помогите пожалуйста,я на начальном уровне изучения программирования.
Хочу реализовать простого робота.

Логика:
Long: close>open
Short: close<open

Вот что написал:
  function main()
        ds = CreateDataSource("SPBFUT", "SIH0", INTERVAL_M1)     --Получил данные с сервера
        Size = ds:Size();                                                                          --Переменная Size равна кол/ву полученных с сервера свечей
        Price_close = ds:C(Size)                                                             --Переменная Price_close равна цене закрытие последней свечке на графике
        message(tostring(Price_close))                                                   --Вывожу переменную Price_close
  end

В результате в сообщении выводит 0. (Вопрос: Почему 0, а не цену закрытия. )

Хочу обратиться к ценам open и close последней свечке, чтобы реализовать логику робота.
Перелопатил кучу инфы, перепробовал кучу вариантов и никак.
    Спасибо
 
Вот тут вы делаете неверное предположение, выраженное в комментарии:
Код
ds = CreateDataSource("SPBFUT", "SIH0", INTERVAL_M1)  --Получил данные с сервера
На самом деле вы еще никаких данных не получили, вы их только заказали, если в ds не оказался nil (а вы ж не проверили). Сейчас квик будет посылать запрос на сервер, потом ждать ответа, потом распихивать приехавшие данные по файлам, а вы уже делаете следующее предположение, снова выраженное в комментарии:
Код
Size = ds:Size();  --Переменная Size равна кол/ву полученных с сервера  свечей
Логично получаете 0 (ничего еще не получено) и потом, не проверяя, передаете этот 0 в вызов ds:C, и снова пишете в комментарии неверное предположение
Код
Price_close = ds:C(Size)  --Переменная Price_close равна цене закрытие последней  свечке на графике
На самом деле вы получили 0, так как индекса 0 в данном случае не бывает, они с 1 начинаются. Это развернутый ответ на вопрос "почему" с учетом
Цитата
на начальном уровне изучения программирования
, а на вопрос "как" тут полфорума исписано.
Страницы: 1
Читают тему
Наверх