Germany | Finland | Saint Petersburg | Drive

Функции преобразования даты и времени

Опубликовано в QPILE

Дата и  время в QPILE имеют внутренний числовой фомат. Для времени это число формата HHMMSS, то есть 11 часов 43 минуты 5 секунд будут числом 114305. Для даты это YYYYMMDD. с одной стороны такое представление удобно для быстрого перевода в него строкого впредставления и назад, с другой представляет серьёзную проблему, когда требуется производить операции суммирования-вычитания с такими представлениями. В этой статье  приведу 4 функции, которые переводят внутреннее представление в строковое и обратно.

Файловые операции с массивами и коллекциями

Опубликовано в QPILE

В процессе создания программ на языке QPILE нередко возникает задача сохранения каких-либо переменных на диске. Это необходимо, например, при обмене данными между различными портфелями или при сохранении информации между последовательными итерациями одного портфеля.

Str_Right()

Опубликовано в QPILE

Простейшая функция, но на удивление часто используемая.

Возвращает правую часть строки, начиная с символа c порядковым номером start

FUNC Str_Right(fs_string,start)
              result = substr(fs_string,start,len(fs_string)-start)
END FUNC

либо макросом M4 (что значительно лучше)

define(`Str_Right',`ifelse($#,2,substr($1,$2,len($1)-$2),`err'print(Error __file line __line__: Illegal number of parameters in call str_right))')

Списки: Delete_From_List()

Опубликовано в QPILE

Удаляет значение из текстового списка при его наличии

''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
' Удаление значения STRING из списка LIST (разделитель - запятые). Возвращает список
FUNC Delete_From_List(dfl_List,dfl_String)
          result = ""
          for dfl_param in dfl_List
                     if dfl_param != ""&dfl_String
                                result = Add_To_List(result,dfl_param)
                     end if
          end for
END FUNC

 

См. также Пропущенные значения в списках  

Проверка таймфрейма из QPILE

Опубликовано в QPILE

Большинство автоматизированных торговых систем используют графики котировок в качестве источника для получения информации. При этом существенным оказывается правильность установки таймфрейма - временного интервала графика. На неправильно установленном таймфрейме робот будет получать недостоверную информацию и, соответственно, принимать неверные торговые решения. Однако, в текущей реализации интерпретатора QPILE в явном виде отсутствуют средства для получения данных о  таймфрейме, установленном на графике. Тем не менее, возможность проверить правильность установки на графике таймфрейма существует.

Многомерные массивы в QPILE

Опубликовано в QPILE

В QPILE нет понятия "массив". Тем более нет многомерных массивов. Однако в некоторых случаях необходимы операции с объектами матричной структуры. Решение проблемы на первый взгляд неочевидно.

Майнинг в браузере