У вас не стоит Flash Player
Page 12 of 13 < 1 2 ... 10 11 12 13 >
Настройки
#62093 - Wed May 07 2014 06:17 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: IgorZhukov]
IgorZhukov Offline
journeyman

Registered: Tue Jul 16 2013
Записи: 82
Я догадался )))

Вот так нужно было сделать)))


Attachments
Скриншот 2014-05-07 18.14.24.png (1254 downloads)


Наверх
#63559 - Fri Aug 01 2014 05:29 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: IgorZhukov]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Не работает простейший скрипт, в котором две формулы рассчитываются по логическому условию - одна формула напрямую от условия (кубик "Логическая формула"), а вторая через кубик "Not" соединённый с условием. Я обращаюсь к специалисту -
он заменяет кубик "Not", от которого шла связь с альтернативной формулой и кубик "Формула" на кубик "Формула" с логикой и двумя встроенными вычислениями - скрипт начинает работать.

Кубик "Not" ВООБЩЕ нельзя использовать с логической формулой или можно, но есть какие-то особенности? Для меня чисто внешне и логически оба варианта выглядят как "если да, то" и "если нет, то". Но разница по работе...

Наверх
#63560 - Fri Aug 01 2014 06:39 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: VladMih]
captian Offline
Carpal Tunnel

Registered: Sat Aug 21 2010
Записи: 2821
Loc: Занзибар
Originally Posted By: VladMih
Не работает простейший скрипт, в котором две формулы рассчитываются по логическому условию - одна формула напрямую от условия (кубик "Логическая формула"), а вторая через кубик "Not" соединённый с условием. Я обращаюсь к специалисту -
он заменяет кубик "Not", от которого шла связь с альтернативной формулой и кубик "Формула" на кубик "Формула" с логикой и двумя встроенными вычислениями - скрипт начинает работать.

Кубик "Not" ВООБЩЕ нельзя использовать с логической формулой или можно, но есть какие-то особенности? Для меня чисто внешне и логически оба варианта выглядят как "если да, то" и "если нет, то". Но разница по работе...
Если работа какого то блока (в том числе и логического) непонятна, выведите его на отдельный график. Сразу отпадёт множество вопросов.
_________________________
трансляция работы скриптов http://tslab.comon.ru/51FC0A21B9A4E85974B2CAD6450623E6
почта captian@mail.ru скайп captian1963

Наверх
#63575 - Fri Aug 01 2014 11:19 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: captian]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Обычно так и делаю, но в том-то и дело, что смотреть было нечего до тех пор, пока спец не заменил "Нот" с "формулой" на формулу с альтернативной логикой.

Да и вообще хотелось бы узнать "общую теорию". Где можно, а где нельзя применять блок "Нот", не нашел его описание. Если есть - ткните носом, плизз.

Наверх
#64767 - Sat Sep 13 2014 01:36 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: VladMih]
alexc Offline
newbie

Registered: Sun May 05 2013
Записи: 30
Loc: Belarus
Блок "Формула"
Формула такая: Макс1[ГмахБар],
где
Макс1 - блок "Максимум"
ГмахБар - блок "Обновляемое значение", хранит определенный номер бара
При запуске ошибка:
12:28:01.81 137 Скрипт 'test3': Элемент 'Формула1' содержит ошибку: Неизвестный индекс ГмахБар.

Если формулу немного изменить: Макс1[i-ГмахБар] - все штатно работает
Уже сломал голову, что тут не так.
Поскольку само значение ГмахБар отображается на графике в виде дробного числа (5 нулей после запятой), думал, что с типами что то не то... Понятно, что использовать переменную типа Double в качестве индекса массива врядли можно. Но и формула типа "Макс1[(int)ГмахБар]" тоже не работает, ошибка:
12:33:48.48 137 Скрипт 'test3': Элемент 'Формула1' содержит ошибку: Неожиданное окончание формулы.

Кто подскажет, в чем тут дело и как обойти?

Наверх
#64768 - Sat Sep 13 2014 02:25 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: alexc]
captian Offline
Carpal Tunnel

Registered: Sat Aug 21 2010
Записи: 2821
Loc: Занзибар
Originally Posted By: alexc
Блок "Формула"
Формула такая: Макс1[ГмахБар],
где
Макс1 - блок "Максимум"
ГмахБар - блок "Обновляемое значение", хранит определенный номер бара
При запуске ошибка:
12:28:01.81 137 Скрипт 'test3': Элемент 'Формула1' содержит ошибку: Неизвестный индекс ГмахБар.
Макс1[ГмахБар] Это как? максимум значения нескольких баров вперёд? Т.е. определяет где максимум будет через пару часов? smile
Надо от текщего номера бара отнять ваш заданный через ОЗ и поставить перед полученным значением минус. Тогда будет максимум значения, на заданном через ОЗ баре.
_________________________
трансляция работы скриптов http://tslab.comon.ru/51FC0A21B9A4E85974B2CAD6450623E6
почта captian@mail.ru скайп captian1963

Наверх
#64773 - Sat Sep 13 2014 04:45 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: captian]
alexc Offline
newbie

Registered: Sun May 05 2013
Записи: 30
Loc: Belarus
Originally Posted By: captian
Макс1[ГмахБар] Это как? максимум значения нескольких баров вперёд? Т.е. определяет где максимум будет через пару часов? smile
Надо от текщего номера бара отнять ваш заданный через ОЗ и поставить перед полученным значением минус. Тогда будет максимум значения, на заданном через ОЗ баре.
Не понял, что вы имеете ввиду.
Я скрипт запускаю на исторических котировках, где слева направо бары считаются от 0-го до какого-то там >0. И при расчете на любом баре ГмахБар <= текущего бара. Если я от текущего значения бара (i) отниму ГмахБар(ОЗ) и поставлю "-" перед полученным значением, получится значение <=0. Значение на баре с индексом <=0?

Наверх
#64775 - Sat Sep 13 2014 05:12 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: alexc]
captian Offline
Carpal Tunnel

Registered: Sat Aug 21 2010
Записи: 2821
Loc: Занзибар
Originally Posted By: alexc
Originally Posted By: captian
Макс1[ГмахБар] Это как? максимум значения нескольких баров вперёд? Т.е. определяет где максимум будет через пару часов? smile
Надо от текщего номера бара отнять ваш заданный через ОЗ и поставить перед полученным значением минус. Тогда будет максимум значения, на заданном через ОЗ баре.
Не понял, что вы имеете ввиду.
Я скрипт запускаю на исторических котировках, где слева направо бары считаются от 0-го до какого-то там >0. И при расчете на любом баре ГмахБар <= текущего бара. Если я от текущего значения бара (i) отниму ГмахБар(ОЗ) и поставлю "-" перед полученным значением, получится значение <=0. Значение на баре с индексом <=0?

Номер бара положительный? например close[3] это на три бара вперёд в будущее.
три бара назад по истории это close[-3]
_________________________
трансляция работы скриптов http://tslab.comon.ru/51FC0A21B9A4E85974B2CAD6450623E6
почта captian@mail.ru скайп captian1963

Наверх
#64776 - Sat Sep 13 2014 06:16 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: captian]
alexc Offline
newbie

Registered: Sun May 05 2013
Записи: 30
Loc: Belarus
Originally Posted By: captian
[quote=alexc][quote=captian]Макс1[ГмахБар]Номер бара положительный? например close[3] это на три бара вперёд в будущее.
три бара назад по истории это close[-3]
Возможно это где-то настраивается, но я такого не нашел. У меня при наведении перекрестия на бары стабильно бары начинаются с нуля и слева направо идут в плюс

Наверх
#64778 - Sat Sep 13 2014 07:40 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: alexc]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
не путайте текущий бар и кол-во загруженных баров.

Наверх
#64800 - Sun Sep 14 2014 02:37 AM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: ViL]
alexc Offline
newbie

Registered: Sun May 05 2013
Записи: 30
Loc: Belarus
Originally Posted By: captian
Надо от текщего номера бара отнять ваш заданный через ОЗ и поставить перед полученным значением минус. Тогда будет максимум значения, на заданном через ОЗ баре.
Хорошо, вот формула по вашему совету: Макс1[-(i-ГмахБар)]
Результат:
Скрипт 'test4': Не могу запустить скрипт.
Скрипт 'test4': c:\Users\V\AppData\Local\TSLab\TSLab12\temp\code17.cs(467,38) : error CS1503: Аргумент "1": преобразование типа из "double" в "int" невозможно
Скрипт 'test4': c:\Users\V\AppData\Local\TSLab\TSLab12\temp\code17.cs(467,32) : error CS1502: Наиболее подходящий перегруженный метод для "System.Collections.Generic.IList<double>.this[int]" имеет несколько недопустимых аргументов

Если вспомнить элементарную математику и немного преобразовать формулу до вида Макс1[ГмахБар-i], то опять же получим отрицательный индекс и ошибку "Неизвестный индекс ГмахБар".

Originally Posted By: ViL
не путайте текущий бар и кол-во загруженных баров.
Не знаю, как вам еще объяснить. Мой расчитываемый в ОЗ ГмахБар вывожу на график, и выводимые значения точно соответствуют номерам баров, которые показываются в подсказке при наведении перекрестия на бар (Например Bar number 8770). Соседние вправо бары имеют нумерацию больше, чем 8770.

Originally Posted By: captian
Макс1[ГмахБар]Номер бара положительный? например close[3] это на три бара вперёд в будущее.
три бара назад по истории это close[-3]
Обычно испольльзую формулы типа close[i-n], но close[-n] тоже работает и показывает то же самое. Т.е. ваше close[-3] означает, что берется значение на 3-м баре назад, и то же самое будет на баре [i-3], но самое по себе значение i-3 что из себя представляет? Откуда идет нумерация баров? Если i=1000, то i-3 = 997, берем значение на 997-м баре. В то же время формула close[0] дает ошибку. Так может к любому значению close можно обращаться только отталкиваясь от номера текущего бара (i)? Другими словами на каждом текущем баре надо знать, сколько баров назад был нужный мне бар? Неужели нельзя напрямую использовать номера баров?

Наверх
#64803 - Sun Sep 14 2014 08:01 AM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: alexc]
captian Offline
Carpal Tunnel

Registered: Sat Aug 21 2010
Записи: 2821
Loc: Занзибар
Originally Posted By: alexc
Хорошо, вот формула по вашему совету: Макс1[-(i-ГмахБар)]
Результат:
Скрипт 'test4': Не могу запустить скрипт.
Совет вы почти поняли (надо вообще то отсчитывать разницу до события, а не отсчитывать номер бара назад), а синтаксис неверный. Надо Макс1[-ГмахБар], и так во всём.
Думаю проще и быстрее будет написать, что хотите получить и приложить результат ваших стараний. А я или кто то другой поправит. Так будет проще, чем вести роман по переписке на форуме.
Про бары: текущий бар, это i, предыдущий, это [i-1] или [-1] (для программы 1.2 одно и тоже), и так далее.
Originally Posted By: alexc
Другими словами на каждом текущем баре надо знать, сколько баров назад был нужный мне бар? Неужели нельзя напрямую использовать номера баров?
1. Да, именно так. 2. Нет нельзя, по многим причинам.
Повторюсь: напишите что хотите получить, только чётко формализовано, и форумчане вам, скорее всего, помогут. Либо подпишитесь на премиум саппорт и у вас будет персональный помощник.


Отредактировано captian (Sun Sep 14 2014 08:18 AM)
_________________________
трансляция работы скриптов http://tslab.comon.ru/51FC0A21B9A4E85974B2CAD6450623E6
почта captian@mail.ru скайп captian1963

Наверх
#64812 - Sun Sep 14 2014 01:07 PM Re: Пример: «Логическая формула», "Формула". Синтаксис [Re: captian]
VladMih Offline
enthusiast

Registered: Thu Apr 11 2013
Записи: 359
Мне кажется вы друг друга поймете только после того, как определитесь что такое "использование номеров баров НАПРЯМУЮ" smile

В моём понимании номера "напрямую" используются,
но если надо обращаться к "фиксированному" бару, то нужно это делать либо через ОЗ перед обращением, либо использовать удержание нужных параметров после первого обращения к бару с заданными условиями.
Где-то так?

Наверх
#67374 - Wed Dec 31 2014 12:15 AM что не так с блоком формула? [Re: SysKreator]
dedmara Offline
journeyman

Registered: Thu Mar 08 2012
Записи: 60
Добрый день.
Подскажите, что не так с блоком формула?

Наверх
#67379 - Wed Dec 31 2014 08:25 PM Re: что не так с блоком формула? [Re: dedmara]
dedmara Offline
journeyman

Registered: Thu Mar 08 2012
Записи: 60
Добавил скрипт, надеюсь


Attachments
Формула.tscript (382 downloads)


Наверх
#67396 - Sat Jan 03 2015 09:37 AM Re: что не так с блоком формула? [Re: dedmara]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
Вы в ЛОГИЧЕСКОЙ формуле пишите: Max-Min

Наверх
#68955 - Tue Mar 24 2015 11:36 AM Re: что не так с блоком формула? [Re: ViL]
SP++ Offline
stranger

Registered: Mon Mar 23 2015
Записи: 5
Здравствуйте!
Делаю из кубиков стратегию, по которой вход производится по касанию High цены определенных диапазонов. В кубик «ЛогичесФормула» поставил:

(Константа1+Константа2) > Максимум > (Константа1+ Константа3) ||(Константа1+Константа2+1000) > Максимум > (Константа1+Константа3+1000)

Скрипт выдает ошибку: error CS0019: Оператор ">" не может применяться к операндам типа "boot" и "double"
Что я сделал не так и как лучше реализовать такой алгоритм?

Наверх
#68956 - Tue Mar 24 2015 11:44 AM Re: что не так с блоком формула? [Re: SP++]
Stan Offline
veteran

Registered: Wed Oct 02 2013
Записи: 1357
Надо отдельно все расписывать Что максимум больше стольки то и меньше столькито, или максимум больше стольки и максимум меньше стольки (Константа1+Константа2) > Максимум && Максимум> (Константа1+ Константа3) ||(Константа1+Константа2+1000) > Максимум && Максимум > (Константа1+Константа3+1000) Вот так должно работать

Наверх
#68963 - Tue Mar 24 2015 01:04 PM Re: что не так с блоком формула? [Re: SP++]
ViL Offline
TSLab
Carpal Tunnel

Registered: Sun Oct 17 2010
Записи: 8139
Синтаксис не верный.
(Константа1+Константа2) > Максимум > (Константа1+ Константа3)
д.б.
(Константа1+Константа2) > Максимум && Максимум > (Константа1+ Константа3)

Наверх
#68966 - Tue Mar 24 2015 01:44 PM Re: что не так с блоком формула? [Re: Stan]
SP++ Offline
stranger

Registered: Mon Mar 23 2015
Записи: 5
Заработало. Спасибо!
Originally Posted By: Stan
Надо отдельно все расписывать Что максимум больше стольки то и меньше столькито, или максимум больше стольки и максимум меньше стольки (Константа1+Константа2) > Максимум && Максимум> (Константа1+ Константа3) ||(Константа1+Константа2+1000) > Максимум && Максимум > (Константа1+Константа3+1000) Вот так должно работать

Наверх
Page 12 of 13 < 1 2 ... 10 11 12 13 >


Moderator:  ViL, sar