Kolossi (Все сообщения пользователя)

Выбрать дату в календареВыбрать дату в календаре

Страницы: 1 2 След.
Таблица с помощью Qlua, Таблица с помощью Qlua
 
Спасибо Егор.

Вдогонку зарегистрируйте пожалуйста еще необходимость позиционирования координат таблицы
функцией SetWindowPos() не относительно экрана, а относительно текущего окна Quik.
 Думаю всем понятно почему.
Таблица с помощью Qlua, Таблица с помощью Qlua
 
Спасибо за ответ Егор.

Уже сейчас можно убрать заголовок средствами Qlua или вы рекомендуете мне убирать его вручную каждый раз после запуска скрипта?  
Таблица с помощью Qlua, Таблица с помощью Qlua
 
Почему-то не сомневался :(

Господа разработчики продукта!

Мы понимаем важность и сложность вашего труда и мелочность наших пожеланий.
Однако найдите немного времени, что бы хоть немного облегчить жизнь тем, кто имеет счастье писать скрипты на Qlua.
 Создав убогое подобие интерфейса в виде пользовательских таблиц пожалуйста сделайте шаг в сторону удобства и необходимых доработок:
1. Возможность убирать заголовок.
2. Возможность убирать столбец нумерации
3. Возможность привязывать таблицу к конкретной вкладке Quik.

Последнее особенно актуально ввиду полного бардака с размещением таблиц после перезагрузки.

Все это вам уже излагалось, однако может быть уже пора продвинуться дальше ответа "будет рассмотрено" ?
И может быть однажды мы дождемся чуда, которое позволит вводить данные в переменную непосредственно в ячейке таблицы ...
Таблица с помощью Qlua, Таблица с помощью Qlua
 
Добрый день коллеги!

Подскажите pls, как в пользовательской таблице убрать первую колонку с нумерацией и заголовок?
Quik на Parallels, Имеем Imac + magic mouse 2
 
Еще одна проблема прорисовалась.
Если после скролла и пропадания окон восстановить окна загрузкой из файла .wnd,
то исчезает фильтр получения обезличенных сделок.  Приходится либо после скролла убивать процесс Квика что бы загрузится со старта, либо загружаться с .wnd и заново оформлять фильтр.
Очень погано :(
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
новичок написал:
Цитата
Kolossi написал:
А не пойти бы вам ..
Наверное в посте было плохо видно, что .... лично к тебе никто не обращался

ткчт у тебя нет никакой необходимости шевелить воздух в этом направлении

:)
Переход на "ты" стандартный аргумент быдла.  Чадтесь тут дальше со своими кепками и семечками :D  
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
новичок написал:
Цитата
Imersio Arrigo написал:
На маке действительно падает :(
:( - нипхальна

:) - пхальна

бо маководы ищущие форточный софт должны платить за глупость трижды.
А не пойти бы вам ... ну скажем на колхозный рынок раздавать там бесплатно "умные мысли и советы" ?

Баг вцеплялся по просьбе разработчиков, советчикам со своим мнением беспокоится не к чему.
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
новичок написал:
Цитата
Kolossi написал:
поставил заново quik на PlayOnMac v4.3.4, 64-bit, встроенный wine 4.11-staging
debian 10 64 bit
wine 4.0.2 64 bit
quik 8.0.5.2 64 bit

нормально парсит ошибку и не падает
Наверное в посте было плохо видно, что это про OS X
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Андрей сделал все на скорую руку.

- поставил заново quik на PlayOnMac v4.3.4, 64-bit, встроенный wine 4.11-staging
- поставил ключи, установил соединение с брокером (втб)
-обновил до 8.03.14, quik нормально начал шуршать данными в таблицах.
- ничего не настраивал и не ставил.
- запустил скрипт с ошибкой:
--
is_run = true

function main()
a=1
 while is_run do
if a=1 then end
   sleep(50)
 end
end

function OnStop()
 is_run = false
end
--
- вывалился в дамп, занавес.
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
новичок написал:
Цитата
Kolossi написал:
c wine v1.41
?
Цитата
Stable: Wine 4.0.2  
Пардон, моя очепятка не 1.41  а 4.11-staging
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
новичок написал:
Цитата
Kolossi написал:
c wine v1.41
?
Цитата
Stable: Wine 4.0.2  
System стоит как раз 4.0.2
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Andrey Bezrukov написал:
Kolossi,

Хотели бы всё же обозначить, что данную ситуацию мы хотели бы изучить по возможности более детально.
Для этого нам необходимо знать точную версию терминала и иметь пример скрипта с ошибкой, приводящей к сбою.
Если это возможно, то просим уточнить версию терминала - 8.0.x - какое число стоит на месте "x"?
Также хотели бы уточнить - если Вам удалось локализовать причину возникновения сбоя в коде скрипта, не могли бы Вы, пожалуйста, предоставить минимальный достаточный для воспроизведения код скрипта, вместо оригинала?

В любом случае, ожидаем Вашего письма. Заранее благодарим за предоставленную информацию.
ОК, вечером попробую смоделировать   заново.
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Andrey Bezrukov написал:
Здравствуйте, Kolossi.

У нас описываемое Вами поведение терминала не воспроизвелось.
Пожалуйста, напишите нам на quiksupport@arqatech.com. В письме просим прислать следующий список файлов для диагностики описываемого Вами поведения терминала:

1. архив рабочего места QUIK без файлов ключа *.txk, но с файлами настроек *.wnd с которыми поведение (падение) воспроизводится, если выявлена какая-либо зависимость от конфигурации рабочего места;
2. оригинал скрипта с наличием неисправленной ошибки;
3. если не затруднит - просим предоставить также минимальный самодостаточный аналог этого скрипта (2), с которым падение воспроизводится;
4. файлы дампа полученные с использованием скриптов из п. (2), (3).
Добрый день Андрей!

Проблемы нестабильной работы с вываливанием в дамп присутствали при работе Quik 8.0х установленного чрез  PlayOnMac c wine v1.41 в режиме  x64.
Несколько раз проверил убирая и возвращая ошибку.
Вылечилось  покупкой Parallels Deskctop 12 и установкой системы на Win7, тут вроде все стабильно.
Дамп, .wnd и скрин ошибки вышлю, скрипт извините не могу - три тысячи строк не считая подгружаемых файлов.

В принципе мне уже не критично, но похоже в 64-разрядной версии от PlayOnMac и wine придется отказаться.

Игорь
Quik на Parallels, Имеем Imac + magic mouse 2
 
Цитата
Виктор написал:
Проблема со скроллом решилась?
Таже проблема. Все сдвигается.
Macbook pro 13
Magic Mouse
Внешний монитор 23"
Parallels  
Аналогично. Приходится после пропадания окон загружать конфигурацию из файла.
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
И сразу первые радости.
Безобидная ошибка в скрипте:
if a=0...  вместо if a==0...  вываливает систему в дамп.

Похоже переход на x64 радикально сделал жизнь нескучной :)
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Все, дошло.  Надо не обновлять, а все сносить и инсталлировать заново.
Всем спасибо !  
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Цитата
Andrey Bezrukov написал:
Здравствуйте, Kolossi.
Да, терминал QUIK 8.0 может быть установлен на компьютеры с macOS при помощи PlayOnMac.
С особенностями процесса установки терминала предлагаем ознакомиться в следующей  инструкцией .
Обращаем Ваше внимание на то, что терминал QUIK разрабатывается и тестируется под ОС Windows, использование на ПК с другими ОС (например, macOS) может приводить к ошибкам, недокументированным особенностям и др. непредвиденному поведению терминала.
Андрей спасибо за ответ!
Однако в указаной инструкции описана установка 32-битной версии. Такая уже стоит и до 8 не обновляется.
Я так понимаю, что все дело в 32-х битной версии Wine. Стоит последняя 4.11-staging.  
Вообще у кого-нибудь работает 8.0 под wine?
QUIK 8.0 x64: что нужно знать перед обновлением на новую версию
 
Здравствуйте!

Есть возможность поставить Quik v8.0 на Mac посредством PlayOnMac ?  
Клиентский портфель, Помогите разобраться со значением полей в таблице "клиентский портфель"
 
Добрый день,  у меня в поле "Тип клиента" стоит "C". Это куда относится?

Спасибо.
Пользовательские таблицы, Привязка к вкладке
 
А можно это рассмотреть хотя бы в этом году.
Реальная проблема, когда после перезагрузки квика скрипт открывает таблицу в другой вкладке.

Спасибо
Пользовательские таблицы, Привязка к вкладке
 
Очень бы хотелось иметь возможность привязывать пользовательские таблицы к конкретным вкладкам Квика.
Например иметь такую опцию в функции CreateTable() или SetWindowPos(...)

Сейчас для того, что бы открыть таблицу в определенной вкладке, нужно запускать скрипт робота находясь в ней.
Если скриптов несколько, то бегать по вкладкам запуская их.
Кроме того при закрытии терминала или аварийном перезапуске пользовательские таблицы вновь открываются во вкладке вкладке, которая была открыта на момент выхода из Квика.  Робот обижается :)
getDepoEx, Ошибки при выполнении функции
 
Еще один момент.
Вчера поставил рядом две функции выборки из одной и той же таблицы:

1:   p=getDepo( "555555", "MC0003300000",  "SU26225RMFS1", "L01-00000F00").depo_current_balance
2:   y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal

В 9-30 скрипт вылетел с указанием на сроку 2.  Т.е. getDepo(...) отработала штатно в отличие от getDepoEx(...)

Хрень какая-то :(
getDepoEx, Ошибки при выполнении функции
 
версия 7.23.2.5

Сергей, спасибо за ваши попытки помочь. Давайте попробуем воспроизвести ситуацию.

Пусть у вас в цикле getDepoEx(...).currentball получает количество бумаг определенного тикера периода T2. Т.е. той бумаги, которая у вас реально есть в портфеле.

В настройках Квика стоит "Очищать данные после смены даты ...на сервере" и "Восстанавливать связь с 9-30 до ...

С вечера запустите скрипт и если он живым  доедет до 10-00 следующего утра, я посыплю голову пеплом и закрою вопрос или попробую поискать причину вне Квика.
getDepoEx, Ошибки при выполнении функции
 
Цитата
Sergey Gorokhov написал:
Kolossi,

не воспроизводится
Код
   if   getDepo Ex ( "MC0003300000" ,  "555555" ,  "SU26225RMFS1" ,  "L01-00000F00" ,  2 )  then 
   message ( "getDepoEx~=nil" )
 else 
   message ( "getDepoEx is nil" )
 end 
  

 

Может у Вас версия терминала старая?
Новая. Вы не внимательно читаете.  Ошибка выскакивает только в момент коннекта с сервером в первый раз за текущие сутки.
Т.е. в терминале стоит реконнект начиная с 9-30 утра и в Основных настройках стоит "Очищать данные после смены даты ...на сервере".   Вот в момент первого реконнекта это и происходит. Дальше все нормально работает.

PS У вас nil, потому что стоит не ваш счет клиента 555555 и другие параметры тоже не ваши.  
getDepoEx, Ошибки при выполнении функции
 
Цитата
Sergey Gorokhov написал:
Цитата
Kolossi написал:
 
Цитата
Sergey Gorokhov  написал:
 
Цитата
 Kolossi   написал:
Если бы она возвращала nil, я бы сюда не обращался. Скрипт останавливается с ошибкой : attempt to index a nil value
А это сообщение разве не говорит что значение nil?
Не говорит, это сообщение о причине остановки скрипта.

сообщение о причине остановки скрипта,  как раз и говорит о том что Вы пытаетесь получить параметр таблицы которая есть nil
Как уже было сказано и еще раз повторим, что для решения проблемы  надо сделать проверку на nil
Еще раз попробую объяснить. Я не тупой и не начинающий :) И пример с type тоже не зря привел.
Сама проверка на nil, останавливает скрипт !!!.
Т.е. в конструкции

if getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2) then
  y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal
end

первая строка останавливает скрипт с диагнозом : attempt to index a nil value
 
getDepoEx, Ошибки при выполнении функции
 
Цитата
Sergey Gorokhov написал:
Цитата
Kolossi написал:
Если бы она возвращала nil, я бы сюда не обращался. Скрипт останавливается с ошибкой : attempt to index a nil value
А это сообщение разве не говорит что значение nil?
Не говорит, это сообщение о причине остановки скрипта.
getDepoEx, Ошибки при выполнении функции
 
Цитата
vgi написал:
Цитата
Kolossi написал:
 
Цитата
vgi  написал:
Вы любите рисковать))
Код
   local  depo  =   getDepo Ex ( "MC0003300000" ,  "555555" ,  "SU26225RMFS1" ,  "L01-00000F00" ,  2 )
 .. .
  
   
Пробовал, сама первая строка, которую вы предлагаете вышибает скрипт.

Помимо рисковать, ещё любите спамить))
Попробуйте кнопку  Просмотр  перед тем, как  Отправить .
На форуме нет возможности исправить/удалить сообщение.

А по делу. Ситуация странная, надеюсь АРКА поможет.
Как бы то ни было, надо, чтобы ошибки не вышибали скрипт. Используйте pcall / xpcall и логгируйте ошибки.
https://forum.quik.ru/messages/forum10/message34051/topic3970/#message34051
Ну вот и спамером обозвали :(, не со зла я :) . Надеюсь админ почистит.
По ситуации мне не понятно, почему такой проблемы нет в других функциях получения данных из таблиц типа getParamEx и др . Завтра на открытии попробую посмотреть getDepo(...)
getDepoEx, Ошибки при выполнении функции
 
--
getDepoEx, Ошибки при выполнении функции
 
Дубль
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Цитата
vgi написал:
 
Цитата
Kolossi  написал:
Добрый день !  Столкнулся с проблемой при использовании данной функции.   ...
y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal
 
Добрый день!

Вы любите рисковать))
В lua, как в динамически типизированном языке, стоит всегда добавлять проверки на null, а потом уже доставать из переменной значения, как из таблицы:
 
Код
      local   depo   =     getDepo  Ex (  "MC0003300000"  ,  " 555555 " ,  "SU26225RMFS1" ,  "L01 - 00000F00" ,   2  )
  local   currentbal   =   depo   and   depo.currentbal 
                           or     0     -- например      
 

Пробовал, сама первая строка, которую вы предлагаете вышибает скрипт.  Повторюсь, только в момент подключения к серверу в первый раз за сутки, когда очищаются данные на сервере (как прописано в настройках Квика). Дальше в течении дня все работает корректно.
getDepoEx, Ошибки при выполнении функции
 
Цитата
Kolossi написал:
Цитата
vgi написал:
 
Цитата
Kolossi  написал:
Добрый день !  Столкнулся с проблемой при использовании данной функции.   ...
y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal
 
Добрый день!

Вы любите рисковать))
В lua, как в динамически типизированном языке, стоит всегда добавлять проверки на null, а потом уже доставать из переменной значения, как из таблицы:
 
Код
      local   depo   =     getDepo  Ex (  "MC0003300000"  ,  " 555555 " ,  "SU26225RMFS1" ,  "L01 - 00000F00" ,   2  )
  local   currentbal   =   depo   and   depo.currentbal 
                           or     0     -- например      
 

Пробовал, сама первая строка, которую вы предлагаете вышибает скрипт.  Повторюсь, только в момент подключения к серверу в первый раз за сутки, когда очищаются данные на сервере (как прописано в настройках Квика). Дальше в течении дня все работает корректно.
getDepoEx, Ошибки при выполнении функции
 
Цитата
vgi написал:
Цитата
Kolossi написал:
Добрый день !  Столкнулся с проблемой при использовании данной функции.   ...
y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal

Добрый день!

Вы любите рисковать))
В lua, как в динамически типизированном языке, стоит всегда добавлять проверки на null, а потом уже доставать из переменной значения, как из таблицы:
Код
   local  depo  =   getDepo Ex ( "MC0003300000" ,  "555555" ,  "SU26225RMFS1" ,  "L01-00000F00" ,  2 )
 local  currentbal  =  depo  and  depo.currentbal 
                          or   0   -- например   

Пробовал, сама первая строка, которую вы предлагаете вышибает скрипт.  Повторюсь только в момент подключения к серверу в первый раз за сутки, когда очищаются данные на сервере (как прописано в настройках Квика). Дальше в течении дня все работает корректно.
getDepoEx, Ошибки при выполнении функции
 
Цитата
Sergey Gorokhov написал:
Цитата
Kolossi написал:
Возможно это баг разработчиков. Но я не могу придумать как это обойти, кроме как останавливать скрипт на время обновления данных. Подскажите если кого озарит
Почему именно баг? Вы же сами сказали что данных нет. А раз данных нет то и возвращать естественно нечего.
И даже в документации про это сказано:
Цитата
В случае ошибки функция возвращает «nil».
остается только добавить проверку на nil
Если бы она возвращала nil, я бы сюда не обращался. Скрипт останавливается с ошибкой : attempt to index a nil value
getDepoEx, Ошибки при выполнении функции
 

Добрый день !

Столкнулся с проблемой при использовании данной функции.

...
y=getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2).currentbal
...

Получаю ошибку несуществующего аргумента в момент очистки таблиц при первом за текущие сутки коннекте к серверу 9-30.  Дальше работает корректно, все данные из таблицы лимитов получаются, при переконнекте скрипт не вылетает.

Попробовал посмотреть что она в этот момент возвращает
...
y=type(getDepoEx ("MC0003300000", "555555", "SU26225RMFS1", "L01-00000F00", 2))
...

получил:   bad argument #1 to type (value expected)

Выборки из других таблиц getParamEx, getPortfolioInfoEx работают как и должны круглосуточно.

Возможно это баг разработчиков. Но я не могу придумать как это обойти, кроме как останавливать скрипт на время обновления данных. Подскажите если кого озарит

Обращение к произвольной таблицы
 
Добрый день знатоки!

Подскажите пожалуйста, а то я уже всю голову сломал.
В скрипте создаю таблицу

t_id=AllocTable()

Я так понимаю, что t_id создается случайным образом

Как обратится к этой таблице из другого скрипта, который этот идентификатор не знает?

Ну или передать переменную из скрипа в скрипт что ли ?

Спасибо,

Игорь

Ошибки в функции getQuoteLevel2!!!, Возвращаемый стакан котировок не всегда соответствует (нормальным) условиям...
 
Цитата
Egor Zaytsev написал:
Добрый день.


Lua не работает с таблицами QUIK, а берет информацию напрямую с сервера брокера.
Поэтому в этом месте рекомендуем обратиться к брокеру и если брокер затруднится в разборе проблемы,
то инициируйте обращение к нам. Будем разбираться.
Начинается обычный пинг-понг и пользователь в качестве мячика :(
--
По вопросу написания и использования скриптов, прошу обращаться в техническую поддержку разработчика ПО Quik: http://arqatech.com/ru/support/

С уважением,

Владислав Сидельников
Эксперт
Департамент брокерского обслуживания
Банк ВТБ (ПАО)
--
Ошибки в функции getQuoteLevel2!!!, Возвращаемый стакан котировок не всегда соответствует (нормальным) условиям...
 
Добрый день !

Вчера (пятница 29/06/18) произошел странный сбой, который обошелся мне в приличную сумму.
С утра перестал отвечать основной сервер брокера ВТБ и все переключились на Сервер2.
Ближе к обеду я обратил внимание на некорректное выставление заявок скриптом QUIK.
После разбирательства выяснилось, что функция getQuoteLevel2() возвращает данные, которые не соответствуют содержимому стакана.

Конкретный трейс - в открытом стакане Алросы нижний оффер 98.64, верхний бид 98.62. Картинка статичная, сделок нет.

Запрос
...
local gql=getQuoteLevel2(x_classcode,x_seccode)
return gql.bid[1].price
...
возвращает значения:  98.64, 98.68, 98.42...

В общем вместо первого бида в таблице возвращалось что-попало.

В связи с этим хотел узнать , берет ли функция данные из открытого в квике стакана или это дерьмо лезет напрямую с сервера брокера ?

 Если будут предложения, как в такую ситуацию больше не попадать, заранее спасибо!
Сервисные функции, getInfoParam('SERVERTIME') возвращает пустую строку
 
Спасибо !
Не думал, что попадусь на такой ерунде. Понедельник...:)
Сервисные функции, getInfoParam('SERVERTIME') возвращает пустую строку
 
Помогите пожалуйста коллеги.
getInfoParam возвращает пустую строку и я не понимаю почему.

Простейший код

if isConnected()==1 then
    local a=getInfoParam("Tradedate")
    local b=getInfoParam("Servertime")
    message(a,1)
    message(b,1)
end

в ответ в message пустые строки
Время рабочей сессии. Версия  7.6.1.1

Спасибо!
Звуки в Qlua, Вопрос по звуковой индикации
 
Цитата
s_mike@rambler.ru написал:
Звуки в Lua
Спасибо.  Только я из-под wine на Mac, может быть по этому: "module 'alien' not found"
Где его вообще взять ?
Звуки в Qlua, Вопрос по звуковой индикации
 
Добрый день !
Подскажите знатоки, есть какая то библиотека проигрывания звукового файла под lua?
Или хотя бы бипер на худой конец ?

Спасибо.

Игорь
Работа с именем переменной
 
Цитата
Sergey Denegin написал:
В луа для этого есть глобальная переменная _G через которую можно обратиться к любой переменной, или даже процедуре.
например _G["a1"] выдаст значение переменной а1
а _G["a1"]["b2"] выдаст значение к элементу массива a1.b2
те в данном примере

if _G[c]=0 then
  ...
end

?
Работа с именем переменной
 
Подскажите пожалуйста человеку не знакомому достаточно подробно с lua.
Как обработать переменную, имя которой представлено в строке?
Например :

var1=0
a = "var"
b = "1"
c =a..b
далее мне нужно например в конструкции if проверить значение переменной var1 имея переменную c.
В некоторых языках для этого используется оператор $
там это выглядит так:
if $c = 0 then
    ........
end

Как это сделать в lua?

Прошу извинить, что не нашел этого в руководстве :(
Вызов окна настроек при запуске индикатора
 
Цитата
Алексей Дуванов написал:
под wine (linux) 7.1.1 и 7.1.2 стало нормально открывать вкладку индикатора.
Также отдельное спасибо, что-то подкрутили в модуле статвол (опционный аналитик) - теперь работает под вайном (правда есть небольшие косячки, но работать можно)
Алексей, а функция sleep(n) у вас под wine корректно работает? У меня false возвращает :(
Вызов окна настроек при запуске индикатора
 
Цитата
Sergey Gorokhov написал:
Здравствуйте,
Попробуйте обновить версию до 7.1
Проверьте будет ли наблюдаться там указанная проблема?
Дело в том что в версии 7.1 диалог настроек графиков был переделан и там используются другие контролы, поэтому проблем не должно быть
Спасибо, попробую.
Вызов окна настроек при запуске индикатора
 
Цитата
SDL написал:
Цитата
Kolossi   написал:
отсутствует вкладка "Общие".
Имеются только вкладки "Дополнительно" и "Уровни".
Ага, есть такая проблема. В Linux из-под WINE у меня проявляется. И в 6-й версии так же.
Наверно, эта вкладка написана очень нестандартно.
Ага, у меня как раз из-под wine (Mac). И что делать, есть варианты ?
Вызов окна настроек при запуске индикатора
 
Даже минимальный код
------
Settings=
{
Name="example",

}


function Init()
return 1
end
function OnCalculate(index)

return nil

end
----------
дает тот же результат.
Вызов окна настроек при запуске индикатора
 
Цитата
Kolossi написал:
dofile(getWorkingFolder().."\\include\\ma.lua")
Пардон

Settings=
{
Name="EMA",
period=50,
value_type="C",
line=
{
{
Name="1",
Color=RGB(0,172,220),
Type=TYPE_LYNE,
Widh=4
}
}
}

function dValue(i,param)
local v = param or "C"
if v=="O" then
return O(i)
elseif v=="H" then
return H(i)
elseif v=="L" then
return L(i)
elseif v=="C" then
return C(i)
elseif v=="V" then
return V(i)
elseif v=="M" then
return H(i)+L(i)/2
elseif v=="T" then
return H(i)+L(i)+C(i)/3
elseif v=="W" then
return H(i)+L(i)+2*C(i)/4
else
return C(i)
end
end

function Init()
return 1
end
function OnCalculate(index)
if index <Settings.period then
return nil
else
local sum=0
for i=index-Settings.period+1, index do
sum=sum+C(i)
end
return sum/Settings.period
end
end
Вызов окна настроек при запуске индикатора
 
Цитата
Egor Zaytsev написал:
Сообщите еще версия QUIK и ссылку на файл dofile(getWorkingFolder().."\\Include\\ma.lua")
Егор, версия указана в первом сообщении.
Ссылка на инкладник не принципиально, я могу эту функцию убрать, результат тот же
простейший вариант:
dofile(getWorkingFolder().."\\include\\ma.lua")

Settings=
{
Name="EMA",
period=50,
value_type="C",
line=
{
{
Name="1",
Color=RGB(0,172,220),
Type=TYPE_LYNE,
Widh=4
}
}
}

function dValue(i,param)
local v = param or "C"
if v=="O" then
return O(i)
elseif v=="H" then
return H(i)
elseif v=="L" then
return L(i)
elseif v=="C" then
return C(i)
elseif v=="V" then
return V(i)
elseif v=="M" then
return H(i)+L(i)/2
elseif v=="T" then
return H(i)+L(i)+C(i)/3
elseif v=="W" then
return H(i)+L(i)+2*C(i)/4
else
return C(i)
end
end

function Init()
return 1
end
function OnCalculate(index)
if index <Settings.period then
return nil
else
local sum=0
for i=index-Settings.period+1, index do
sum=sum+C(i)
end
return sum/Settings.period
end
end
Вызов окна настроек при запуске индикатора
 
Цитата
Egor Zaytsev написал:
Добрый день.

Просьба выложить скриншот проблемы и скрипт индикатора.
http://s019.radikal.ru/i632/1603/c0/3cb3fb8ccf89.png

dofile(getWorkingFolder().."\\Include\\ma.lua")

Settings=
{
Name="EMA",
period=50,
value_type="C",
line=
{
{
Name="1",
Color=RGB(0,172,220),
Type=TYPE_LYNE,
Widh=4
}
}
}

function Init()
myEMA = cached_EMA()
return 1
end
function OnCalculate(index)
return myEMA(index, Settings.period, Settings.value_type)
end
Страницы: 1 2 След.
Наверх