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



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

СообщениеДобавлено: Вт Сен 16, 2008 4:57 pm Ответить с цитатой Вернуться к началу

Привет!
Как и обещал - начинаю новую тему.
Сразу опишу конфигурацию - АМИ 5.10 +IQ Feed (RealTime)

Итак речь пойдет о разного рода способов "отобрать" акции для торговли.
Я разбираюсь в программинге как свин в апельсинах поэтому не пинайте за глупые вопросы.
Первый "сканер".
Суть его отобрать все акции у которых окрытие и закрытие было рядом с экстремумами цен. Написав его я провел небольшое стат исследование на предмет закрытия гэпов и у меня в голове (той, которая рукам покоя не дает) родилась мысль сделать сканер, который бы из этой группы акций отследил НА МОМЕНТЕ ОТКРЫТИЯ те акции, которые открылись с гэпом в ту или иную сторону на расстояние не менее 0.5% от экстремума предыдущего дня.
Код я написал (см ниже), но он выдает результат каким то странным способом. Когда я его запустил (через 1 минуту после открытия), он выбрал5 акций, еще через пять минут - уже восемь, через 15 минут после открытия маркета - 21 штука. На момент закрытия - 38
Отсюда вопрос
- возможно ли создать сканер который бы брал акции из WatchList и в момент открытия рынка или через минуту после открытия рынка (чтобы все акции открылись) проводил их анализ на предмет геповости и запихивал в другой WatchList???
Можно запускать его "руками", но главное, чтобы он находил ВСЕ акции сразу, а не "выдавливал" их из себя

Спасибо



Код:

A1=Ref((High-Low),-1)>Ref((High-Low),-2);//определили увеличение диапазона
S1=Ref((High-Low),-1)/5;//установили значение 20%
A3=Ref(Open,-1)>=(Ref(High,-1)-S1);//открытие в верхних 20
A4=Ref(Close,-1)<Ref>=(Ref(High,-1)-S1);//открытие в верхних 20
A6=Ref(Open,-1)<Ref>2;//ATR
A8=Open>Ref(High,-1) AND ((Open-Ref(High,-1))/Ref(High,-1))*100>=0.5;
A9=Open<Ref>=0.5;
//


Filter=A1 AND ((A3 AND A4) OR (A5 AND A6)) AND A7 AND Close>15 AND Close<100 AND (A8 OR A9);
AddColumn(Ref(Open,-1), "Open-1",1.2, colorDefault,colorDefault,80);
AddColumn(Ref(High,-1), "High-1",1.2, colorDefault,colorDefault,80);
AddColumn(Ref(Low,-1), "Low-1",1.2, colorDefault,colorDefault,80);
AddColumn(Ref(Close,-1), "Close-1",1.2, colorDefault,colorDefault,80);

AddColumn(Open, "Open",1.2, colorDefault,colorDefault,80);
AddColumn(High, "High",1.2, colorDefault,colorDefault,80);
AddColumn(Low, "Low",1.2, colorDefault,colorDefault,80);
AddColumn(Close, "Close",1.2, colorDefault,colorDefault,80);
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Сен 16, 2008 7:18 pm Ответить с цитатой Вернуться к началу

Цитата:

- возможно ли создать сканер который бы брал акции из WatchList и в момент открытия рынка или через минуту после открытия рынка (чтобы все акции открылись) проводил их анализ на предмет геповости и запихивал в другой WatchList???

Сканировать акции входящие в WatchList очень просто. Можно воспользоваться опцией "use filter" в АА или в код добавить проверку на принадлежность символа к WatchList при помощи ф-ции
InWatchList(listno)

Цитата:

и запихивал в другой WatchList???

Вот это придется делать руками
После сканирования можно правой кнопкой мышки щелкнуть на результаты сканирования и выбрать там опцию Add all results to watch lis... В результате все отсканированные бумаги попадут в выбраный watch list (создать новый watch list можно из меню sumbol -> watch list -> New watchList)
Предварительно надо очистить содержимое листа наблюдений там же (в меню sumbol) выбрать пункт erase(make empty)...
Код проверить не удалось. Слишком много там косяков. Возможно, что форум косячит.
По описанию получается примерно так
Код:

A1 = Ref(H -L, -2) < Ref(H-L, -1); // увеличение диаппазона
diap = Ref((H-L)/5, -1);
A2 = Ref(O < (L + diap) AND C > (H - diap) OR O > (H - diap) AND C < (L + diap), -1);
// открытие и закрытия вчера в 20% процентах от краев диаппазона.

A3 = O > Ref(H + (H-L)/2, -1) OR O < Ref(L - (H-L)/2, -1);

Filter = A1 AND A2 AND A3 AND C > 15 AND C < 100;

При сканировании надо установить Range на n last days n = 1

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



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

СообщениеДобавлено: Вт Сен 16, 2008 7:44 pm Ответить с цитатой Вернуться к началу

Спасибо большое!
Ваш код намного короче и удобнее для "прочтения"
тогда как я понял порядок действий будет следующий
1. сканируем ДО открытия маркета акции и находим все, которые удовлетворяют первоначальным требованиям. Запихиваем их в Watch List
2.проверяем этот лист на предмет "лишних" акций - делаем это глазами так как фильтр тут нам не поможет Smile - скорее интуиция
3.через минуту после открытия запускаем сканер по этому Watch List на предмет поиска ГЭПнувших акций.

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

Спасибо

ЗЫ - а почему у меня код глючный??? вроде у меня пашет сносно вполне
Посмотреть профиль Отправить личное сообщение
000
Site Admin


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

СообщениеДобавлено: Вт Сен 16, 2008 8:50 pm Ответить с цитатой Вернуться к началу

Цитата:

Спасибо большое!
Ваш код намного короче и удобнее для "прочтения"
тогда как я понял порядок действий будет следующий
1. сканируем ДО открытия маркета акции и находим все, которые удовлетворяют первоначальным требованиям. Запихиваем их в Watch List
2.проверяем этот лист на предмет "лишних" акций - делаем это глазами так как фильтр тут нам не поможет - скорее интуиция
3.через минуту после открытия запускаем сканер по этому Watch List на предмет поиска ГЭПнувших акций.

Я написал только сканер для пункта 3. Он сразу проверит чтобы вчера диаппазон вырос, чтобы вчера открытие и закрытие было в 20% от мин-макс, чтобы сегодня был гэп 50% от вчерашнего диаппазона.
Цитата:

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

Спасибо

ЗЫ - а почему у меня код глючный??? вроде у меня пашет сносно вполне

Я не знаю. Код проверит неполучается
Посмотрите A6 и A9 там ерунд нечитаемая. Возможно это глюк форума.

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



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

СообщениеДобавлено: Ср Сен 17, 2008 11:04 am Ответить с цитатой Вернуться к началу

Цитата:

Я не знаю. Код проверит неполучается
Посмотрите A6 и A9 там ерунд нечитаемая. Возможно это глюк форума.

Да, там не правильно, это форум почему то обрезал - там идет как раз проверка геповости Sad Странно
Но все равно спасибо!!!! сегодня буду тестировать на открытии и потом задам следующий вопрос Smile
Посмотреть профиль Отправить личное сообщение
Показать сообщения:      
Начать новую тему  Ответить на тему


 Перейти:   



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


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

File Attachment © by Meik Sievertsen