Список форумов AmiSite.ru AmiSite.ru
Форум по Ами
 FAQ  •  Поиск  •  Пользователи  •  Группы   •  Регистрация  •  Профиль  •  Войти и проверить личные сообщения  •  Вход
 Нарисовать стрелки Следующая тема
Предыдущая тема
Начать новую тему  Ответить на тему
Автор Сообщение
pingvin



Зарегистрирован: 17.02.2010
Сообщения: 4

СообщениеДобавлено: Пн Сен 27, 2010 6:06 pm Ответить с цитатой Вернуться к началу

Господа, прошу помощи.

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

Не поделитесь с кодом? А то из меня программист, как из дерьма пуля - которой день не могу разобраться с функцией рисования стрелок
Посмотреть профиль Отправить личное сообщение
Teema



Зарегистрирован: 01.04.2009
Сообщения: 184

СообщениеДобавлено: Пн Сен 27, 2010 8:23 pm Ответить с цитатой Вернуться к началу

Код:
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorGreen, 0,L, Offset=-15);                     
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorOrange, 0,H, Offset=-15);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorBlack, 0,H, Offset=-25);                     
PlotShapes(IIf(Cover, shapeUpArrow, shapeNone),colorBlue, 0,L, Offset=-25);
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
pingvin



Зарегистрирован: 17.02.2010
Сообщения: 4

СообщениеДобавлено: Вт Сен 28, 2010 5:46 pm Ответить с цитатой Вернуться к началу

Вай-вах, спасибо большое! Very Happy
Посмотреть профиль Отправить личное сообщение
belin



Зарегистрирован: 09.09.2009
Сообщения: 230
Откуда: wealth-lab user

СообщениеДобавлено: Вт Сен 28, 2010 11:42 pm Ответить с цитатой Вернуться к началу

Teema писал(а):
Код:
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorGreen, 0,L, Offset=-15);                     
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorOrange, 0,H, Offset=-15);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorBlack, 0,H, Offset=-25);                     
PlotShapes(IIf(Cover, shapeUpArrow, shapeNone),colorBlue, 0,L, Offset=-25);

Более реально смотреть на покупки по максимуму и продажи по минимуму. Если много сделок и мелкий таймфрейм, лучше использовать Offset=0, пренебрегая величиной shapeArrow и тем, что она указывает острием на более оптимистичный вариант. Попробуйте сравнить:
Код:
PlotShapes(IIf(Buy, shapeUpArrow, shapeNone),colorGreen, 0,H, Offset=0);                     
PlotShapes(IIf(Sell, shapeDownArrow, shapeNone),colorOrange, 0,L, Offset=0);
PlotShapes(IIf(Short, shapeDownArrow, shapeNone),colorBlack, 0,L, Offset=0);                     
PlotShapes(IIf(Cover, shapeUpArrow, shapeNone),colorBlue, 0,H, Offset=0);

будет меньше иллюзий.
Посмотреть профиль Отправить личное сообщение
hardcam



Зарегистрирован: 12.11.2010
Сообщения: 124

СообщениеДобавлено: Чт Ноя 18, 2010 4:46 pm Ответить с цитатой Вернуться к началу

я таким кодом пользуюсь

Код:

PlotShapes( Buy*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Cover*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Sell*shapeDownArrow, colorRed, 0, H );
PlotShapes( Short*shapeDownArrow, colorRed, 0, H );
Посмотреть профиль Отправить личное сообщение
hardcam



Зарегистрирован: 12.11.2010
Сообщения: 124

СообщениеДобавлено: Пт Ноя 19, 2010 9:38 pm Ответить с цитатой Вернуться к началу

использую такой код

Buy = H>Линия;
BuyPrice = Линия;

АА показывает стрелки сделки нормально,там где они совершились.
Код который приводил выше стрелки на каждом баре рисует, в соответствии Хай больше или меньше линии.

подскажите пожалуйста как решить эту проблему
Посмотреть профиль Отправить личное сообщение
Teema



Зарегистрирован: 01.04.2009
Сообщения: 184

СообщениеДобавлено: Сб Ноя 20, 2010 12:09 am Ответить с цитатой Вернуться к началу

После правил поставь

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

Equity(1);
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
hardcam



Зарегистрирован: 12.11.2010
Сообщения: 124

СообщениеДобавлено: Сб Ноя 20, 2010 10:32 am Ответить с цитатой Вернуться к началу

Teema писал(а):
После правил поставь

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

Equity(1);

спасибо)все отлично работает)
Посмотреть профиль Отправить личное сообщение
000
Site Admin


Зарегистрирован: 10.12.2007
Сообщения: 9106

СообщениеДобавлено: Сб Ноя 20, 2010 10:43 am Ответить с цитатой Вернуться к началу

Это

Код:
Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

и это
Код:
Equity(1);

вместе не надо. Достаточно только одно из них.

_________________
ceterum censeo carthaginem esse delendam
Удачи. Олег.
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
hardcam



Зарегистрирован: 12.11.2010
Сообщения: 124

СообщениеДобавлено: Ср Ноя 24, 2010 5:17 pm Ответить с цитатой Вернуться к началу

Teema писал(а):
После правил поставь

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

Equity(1);


спасибо!
сигналов уменьшилось, но не везде сигналы появляются.
убираю Equity(1); сигналов много становится, но зато они появляются там где должны быть по условиям системы.

условия такие:

Код:

Buy = Close>линия1;
BuyPrice = Open +1;
Sell = Close<линия2;
SellPrice = Open +1;
Short = Close<линия2;
ShortPrice = Open +1;
Cover = Close>линия1;
CoverPrice = Open +1;

когда убираю Equity(1); то сигналы появляются когда выше ниже линии цена.
подскажите пожалуйста решение
Посмотреть профиль Отправить личное сообщение
hardcam



Зарегистрирован: 12.11.2010
Сообщения: 124

СообщениеДобавлено: Ср Ноя 24, 2010 6:44 pm Ответить с цитатой Вернуться к началу

hardcam писал(а):
Teema писал(а):
После правил поставь

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

Equity(1);


спасибо!
сигналов уменьшилось, но не везде сигналы появляются.
убираю Equity(1); сигналов много становится, но зато они появляются там где должны быть по условиям системы.

условия такие:

Код:

Buy = Close>линия1;
BuyPrice = Open +1;
Sell = Close<линия2;
SellPrice = Open +1;
Short = Close<линия2;
ShortPrice = Open +1;
Cover = Close>линия1;
CoverPrice = Open +1;

когда убираю Equity(1); то сигналы появляются когда выше ниже линии цена.
подскажите пожалуйста решение


Все исправил.
то ли от перезагрузки ами все нормально стало, то ли после того как в аа протестил и нажал показать сделки...сути не понял как это могло повлиять..но повлияло)
Посмотреть профиль Отправить личное сообщение
Яхфар



Зарегистрирован: 24.04.2011
Сообщения: 74

СообщениеДобавлено: Пт Окт 14, 2011 11:52 am Ответить с цитатой Вернуться к началу

Возникла сложность при рисовании стрелок на покупку (индикатор Price Chanel). А именно, как сделать так, чтобы стрелки на покупку и продажу не повторялись, если покупка или продажа уже есть.

Сам код:

Period1 = Optimize("PeriodA", 14, 1, 60, 1);
Period2 = Optimize("PeriodB", 30, 1, 70, 1);
Top = Ref(HHV(C, Period1), -1);
Bot = Ref(LLV(C, Period2), -1);
Mid = (Top+Bot)/2;
Plot(Top, "Top", colorRed);
Plot(Bot, "Bot", colorRed);
Plot(Mid, "Mid", colorRed);
Buy = Cover= Cross(C, Top);
Sell = Short= Cross(Bot, C);

PlotShapes( Buy*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Cover*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Sell*shapeDownArrow, colorRed, 0, H );
PlotShapes( Short*shapeDownArrow, colorRed, 0, H );
Посмотреть профиль Отправить личное сообщение
Osiris



Зарегистрирован: 09.12.2009
Сообщения: 48
Откуда: Msk

СообщениеДобавлено: Пт Окт 14, 2011 1:09 pm Ответить с цитатой Вернуться к началу

Яхфар писал(а):
Возникла сложность при рисовании стрелок на покупку (индикатор Price Chanel). А именно, как сделать так, чтобы стрелки на покупку и продажу не повторялись, если покупка или продажа уже есть.


Дружищще, будь внимательнее, пару постами выше уже это обсуждали. Лови код, читай учебник. Wink

Код:

Period1 = Optimize("PeriodA", 14, 1, 60, 1);
Period2 = Optimize("PeriodB", 30, 1, 70, 1);
Top = Ref(HHV(C, Period1), -1);
Bot = Ref(LLV(C, Period2), -1);
Mid = (Top+Bot)/2;
Plot(Top, "Top", colorRed);
Plot(Bot, "Bot", colorRed);
Plot(Mid, "Mid", colorRed);
Buy = Cover= Cross(C, Top);
Sell = Short= Cross(Bot, C);

Equity(1);

PlotShapes( Buy*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Cover*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Sell*shapeDownArrow, colorRed, 0, H );
PlotShapes( Short*shapeDownArrow, colorRed, 0, H );
Посмотреть профиль Отправить личное сообщение
Яхфар



Зарегистрирован: 24.04.2011
Сообщения: 74

СообщениеДобавлено: Пт Окт 14, 2011 2:43 pm Ответить с цитатой Вернуться к началу

Пасибо...Чето я протупил, получилось если использовать
Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);

Сам код теперь такой:

Period1 = Optimize("PeriodA", 14, 1, 60, 1);
Period2 = Optimize("PeriodB", 30, 1, 70, 1);
Top = Ref(HHV(C, Period1), -1);
Bot = Ref(LLV(C, Period2), -1);
Mid = (Top+Bot)/2;
Plot(Top, "Top", colorRed);
Plot(Bot, "Bot", colorRed);
Plot(Mid, "Mid", colorRed);
Buy = Cover= Cross(C, Top);
Sell = Short= Cross(Bot, C);

Buy = ExRem( Buy, Sell );
Sell = ExRem( Sell, Buy );
Short = ExRem (Short, Cover);
Cover = ExRem (Cover, Short);


PlotShapes( Buy*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Cover*shapeUpArrow, colorGreen, 0, L );
PlotShapes( Sell*shapeDownArrow, colorRed, 0, H );
PlotShapes( Short*shapeDownArrow, colorRed, 0, H );
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



Следующая тема
Предыдущая тема
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах
Вы не можете вкладывать файлы
Вы не можете скачивать файлы


Powered by phpBB © 2001, 2002 phpBB Group :: FI Theme :: Часовой пояс: GMT + 3

File Attachment © by Meik Sievertsen