Автор |
Сообщение |
Dudi
Зарегистрирован: 03.02.2010
Сообщения: 25
|
Есть ли в Ами аналоги Метастоковских
Security() и PREV ? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Если я не забыл
Security() в Ами Foreign()
А вот Prev нету. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Dudi
Зарегистрирован: 03.02.2010
Сообщения: 25
|
000 писал(а): |
А вот Prev нету. |
А если Prev нету, то как же поступить в таком случае:
есть индикатор который принимает значение "1" и "-1", а "0" он игнорирует, вот так(в коде Меты):
If( ИНДИКАТОР>= 1, 1, If( ИНДИКАТОР<= -1, -1, PREV ));
т.е. когда индикатор где то посередине (между 1 и -1 ) индикатор вместо возможного "0", возвращает свое последнее значение (1 или -1).
Как такую конструкцию записать в Ами ? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
настырный
Зарегистрирован: 15.06.2008
Сообщения: 67
|
Я не знаю оператора Prev в Метастоке.
Посмотрите, пожалуйста. И проверьте. Я могу заблуждаться...
Код: |
xx = Flip(Ind > 0 , Ind < 0);
yy = Flip(Ind <0> 0);
Znachenie = IIf(xx, 1, IIf(yy, -1, 0));
|
xx = Flip(Ind > 0 , Ind < 0);
yy = Flip(Ind <0> 0);
Znachenie = IIf(xx, 1, IIf(yy, -1, 0));
почему-то форум корежит код. выложил без code...
Во второй строчке, где уу в операторе Flip условия надо поменять местами, относительно оператора xx.
т.е. yy = Flip ( индекс меньше 0, индекс больше 0 ) |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Dudi
Зарегистрирован: 03.02.2010
Сообщения: 25
|
Prev в Мете, это "Previous Value of indicator" - функция которая возвращает предыдущее значение индикатора.
Спасибо, буду пробовать.
И еще у меня вопрос, что в Ами соответствует Метавскому ValueWhen ? |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
ValueWhen оно и в Африке ValueWhen |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Dudi
Зарегистрирован: 03.02.2010
Сообщения: 25
|
А как в Ами вставить в код ссылку на другой индикатор ? (Аналог Метастоковской Fml("ИНДИКАТОР"))
Например чтобы рассчитать МА по значениям другого индикатора таким образом:
MA("ССЫЛКА НА ИНДИКАТОР", 10);
И еще вопросик - как сделать чтобы в окне с бумагой №1 были одни индикаторы, а в окне с бумагой №2 - другие ?
А то получается между бумагами переключаешься и индикаторы кочуют из бумаги в бумагу, потом удалил индикатор на одном графике - и они на всех графиках других бумаг удалились.. |
|
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Цитата: |
Например чтобы рассчитать МА по значениям другого индикатора таким образом:
|
Да так и написать
Код: |
Индикатор = БлаБлаБла;
indMA = MA(Индикатор, 10); |
Если уже позарез надо вставить в свой код код другого АФЛ, то для этого есть функция #include
Цитата: |
И еще вопросик - как сделать чтобы в окне с бумагой №1 были одни индикаторы, а в окне с бумагой №2 - другие ?
|
Никак. Сделай разный набор индикаторов на разных листах. На самом деле можно, но сложно. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
Dudi
Зарегистрирован: 03.02.2010
Сообщения: 25
|
000 писал(а): |
Например чтобы рассчитать МА по значениям другого индикатора таким образом:
Да так и написать
Код: |
Индикатор = БлаБлаБла;
indMA = MA(Индикатор, 10); |
Если уже позарез надо вставить в свой код код другого АФЛ, то для этого есть функция #include
|
indMA = MA(Индикатор, 10);
В этом случае сама функция индикатора на том же листе должна быть ?
Тойсть прям в текст робота можно #include вставлять ?
Например так:
Код: |
Buy = #include "C:\Program Files\AmiBroker\AFL\01.afl" ;
Sell = #include "C:\Program Files\AmiBroker\AFL\02.afl" ;
...
|
А робот от этого притормаживать не будет ?
Или всетаки лучше прописывать входы и выходы в самом роботе ? Но там приличное количество кода получается..
А .afl которые вызываются #include во время работы робота надо тоже на график бросать или нет ? |
Последний раз редактировалось: Dudi (Ср Фев 24, 2010 1:33 pm), всего редактировалось 1 раз |
|
Посмотреть профиль Отправить личное сообщение |
|
000
Site Admin
Зарегистрирован: 10.12.2007
Сообщения: 9106
|
Лучше прописать прямо в коде робота. То, что прилично получается это ничего, но можно и так #include "C:\Program Files\AmiBroker\AFL\01.afl"
Будет или не будет тормозить зависит больше от самого кода. |
_________________ ceterum censeo carthaginem esse delendam
Удачи. Олег. |
|
Посмотреть профиль Отправить личное сообщение Посетить сайт автора |
|
burga
Зарегистрирован: 04.09.2009
Сообщения: 23
|
настырный писал(а): |
Я не знаю оператора Prev в Метастоке. |
А зачем он нужен, если все можно вытащить через массивы?
PrevC = С[NumberCurBar-1]; |
|
|
Посмотреть профиль Отправить личное сообщение |
|
Mr. Foggs
Зарегистрирован: 03.07.2012
Сообщения: 5
|
Нужно обратиться к значению функции на прошлом баре из самой этой функции. Вот для этого надо аналог PREV в AFL. |
|
|
Посмотреть профиль Отправить личное сообщение ICQ Number |
|
|