Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Вопросы по AFL |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 След. |
Автор |
Сообщение |
Swell
Зарегистрирован: 18.01.2013
Сообщения: 117
|
Похоже нашёл как это сделать. Поскольку, судя по всему, встроенной в AFL такой функции нет, то код такой:
EnableScript("vbscript");
<%
afl("ff")=1
result = MsgBox ("ggg",vbExclamation+vbOkCancel+vbDefaultButton2,"fff")
if result = vbOk Then
'MsgBox "ggg",0,"fff"
afl("ff")=2
End if
%>
PopupWindow(""+ff,"ff",30);
Вопрос исчерпан. Всем спасибо |
|
|
Посмотреть профиль Отправить личное сообщение |
|
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
Что-то произошло с Амиком - подскажите как решить.
Амик лицензионный.
Почему-то, если использую ParamList, то выбранное значение отображается в окошке Interpretation.
Почему оно отображается - мне это не надо
Причем раньше, если не ошибаюсь, такого не было
Может я где-то что-то в настройках испортил?
К примеру такой код (взял стандартный индикатор Price и добавил только один оператор), результат на вложенной картинке:
Код: |
_SECTION_BEGIN("Price");
SetChartOptions(0,chartShowArrows|chartShowDates);
ff= ParamList("ff", "Value 1|Value 2|Value 3", 1); //тестовый оператор.
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
_SECTION_END(); |
Заранее спасибо за ответ(ы) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Угу. Есть такое. Очень похоже на глюк. Как обойти не нашел. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
OlegRC2
Зарегистрирован: 18.02.2016
Сообщения: 10
|
Помогите с кодом, не понимаю почему не работает. Что хочу сделать: Если свеча buy и индикатор между О и С, то смотрим следующую свечу. Следующая свеча должна быть тоже buy и О и С находится выше индикатора. Если все условия выполнены покупаем на следующей свече (третьей по счету) по цене открытия (это я в настройках тестера сделал, тут все норм). Выходим по тейк профиту (тоже в настройках сделал) или когда свеча sell закроется ниже индикатора. Собственно только последняя часть и работает.
Вот для наглядности скрин.
А вот и не рабочий код.
Код: |
if (C[2] > O[2] AND IND[2] > O[2] AND IND[2] < C[2]) // проверка, что первая свеча "buy" и индикатор внутри свечи
{
if (C[1] > O[1] AND IND[1] < O[1] AND IND[1] < C[1]) // проверка второй свечи, что она "buy" и выше индикатора
{
Buy = Open;
}
}
Sell = Cross(IND, C); // закрытие позиции если не закрылось по тейк профиту
|
|
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Код: |
SetTradeDelays(1, 0, 0, 0); // поставил задержку buy на 1 "Если все условия выполнены покупаем на следующей свече"
ind = ...; // индиатор
buyCond = ...; // свечка Buy
Cond1 = Ref( buyCond AND O < ind AND C > ind, -1)
Cond2 = O > ind AND C > ind;
Buy = Cod1 AND Cond2;
BuyPrice = O; // покупаем открытие |
|
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
OlegRC2
Зарегистрирован: 18.02.2016
Сообщения: 10
|
Огромное спасибо за код, буду разбираться в логике программы. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
trashfx
Зарегистрирован: 27.06.2015
Сообщения: 90
|
il-ir писал(а): |
Что-то произошло с Амиком - подскажите как решить.
Амик лицензионный.
Почему-то, если использую ParamList, то выбранное значение отображается в окошке Interpretation.
Почему оно отображается - мне это не надо
Причем раньше, если не ошибаюсь, такого не было
Может я где-то что-то в настройках испортил?
К примеру такой код (взял стандартный индикатор Price и добавил только один оператор), результат на вложенной картинке:
Код: |
_SECTION_BEGIN("Price");
SetChartOptions(0,chartShowArrows|chartShowDates);
ff= ParamList("ff", "Value 1|Value 2|Value 3", 1); //тестовый оператор.
_N(Title = StrFormat("{{NAME}} - {{INTERVAL}} {{DATE}} Open %g, Hi %g, Lo %g, Close %g (%.1f%%) {{VALUES}}", O, H, L, C, SelectedValue( ROC( C, 1 ) ) ));
Plot( C, "Close", ParamColor("Color", colorDefault ), styleNoTitle | ParamStyle("Style") | GetPriceStyle() );
_SECTION_END(); |
Заранее спасибо за ответ(ы) |
That's not a bug! It has always been the case that string variables are output in Information window.
If you don't want to have output of strings there then use
Код: |
EnableTextOutput( false ); |
or
Код: |
EnableTextOutput( 0 ); |
at the top of the string you want to exclude from output.
If you want to enable it again after that at later stage of your code then use
Код: |
EnableTextOutput( true ); |
or
Код: |
EnableTextOutput( 1 ); |
https://www.amibroker.com/guide/afl/enabletextoutput.html |
|
|
Посмотреть профиль Отправить личное сообщение |
|
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
trashfx писал(а): |
That's not a bug! It has always been the case that string variables are output in Information window.
If you don't want to have output of strings there then use
Код: |
EnableTextOutput( false ); |
or
Код: |
EnableTextOutput( 0 ); |
|
Thanks.
Спасибо. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
trashfx писал(а): |
That's not a bug! It has always been the case that string variables are output in Information window.
|
Thanks. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
il-ir
Зарегистрирован: 28.05.2013
Сообщения: 189
|
Кстати, аналогичного эффекта можно достигнуть, если использовать _N().
То есть, вместо
Код: |
ff = ParamList("ff", "Value 1|Value 2|Value 3", 1); //тестовый оператор. |
написать
Код: |
_N(ff = ParamList("ff", "Value 1|Value 2|Value 3", 1)); //тестовый оператор. |
Это будет действо, аналогичное EnableTextOutput( false ); но только для одного оператора.
Если бы trashfx не подтолкнул к поискам, так и не знал бы
Хотя в каждом индикаторе / системе / прочем, где выводится заголовок, используется конструкция: _N(Title = ...). |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Swell
Зарегистрирован: 18.01.2013
Сообщения: 117
|
Никто не подскажет, можно ли из кода AFL узнать, в каких местах на графике Ами рисует линии сетки?
Я хочу нарисовать свои с помощью низкоуровневой графики, но в тех местах, где их рисует Ами. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
вроде нельзя. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Swell
Зарегистрирован: 18.01.2013
Сообщения: 117
|
Жаль (.
Здесь проблема в том, чтобы определить, где Ами расставляет надписи на осях.
Ну или по какому алгоритму... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
trashfx
Зарегистрирован: 27.06.2015
Сообщения: 90
|
Swell писал(а): |
Никто не подскажет, можно ли из кода AFL узнать, в каких местах на графике Ами рисует линии сетки?
Я хочу нарисовать свои с помощью низкоуровневой графики, но в тех местах, где их рисует Ами. |
What kind of grid lines do you want to draw?
Do you mean like these?
http://amisite.ru/phpBB2/viewtopic.php?p=22280#22280
There is no Gfx required for those. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Swell
Зарегистрирован: 18.01.2013
Сообщения: 117
|
Нет, не совсем то.
У меня есть некоторые построения низкоуровневой графикой, которые хотелось бы, чтобы были ниже (по оси Z) всех остальных элементов карты, но были бы выше линий сетки...
Вобщем проблема в том, что низкоуровневая графика не имеет параметра Z-Order... Она либо поверх всей карты, либо за ней. Один из вариантов - нарисовать линии сетки с помощью той же низкоуровневой графики... |
|
|
Посмотреть профиль Отправить личное сообщение |
|
|
Начать новую тему Ответить на тему |
Список форумов AmiSite.ru » Вопросы по AFL |
На страницу Пред. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 След. |
|
Следующая тема
Предыдущая тема
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете голосовать в опросах Вы не можете вкладывать файлы Вы не можете скачивать файлы
|
|