Здравствуйте, гость ( Вход | Регистрация )

8 страниц V « < 3 4 5 6 7 > »   
Ответить в эту темуОткрыть новую тему
> Советник Ray Tactic Advisor, Советник на основе индикатора ZUP
leonid553
сообщение 8.7.2007, 6:05
Сообщение #41





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Навскидку, могу предложить открытие встречной позиции, - если мы видим "неотвратимио" надвигающегося лося!
При этом можно, как условие на встречную позу, использовать фильтр, вроде вот такого -


Эскизы прикрепленных изображений
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergey_n
сообщение 8.7.2007, 6:59
Сообщение #42





Группа: Активный участник
Сообщений: 22
Регистрация: 5.7.2007
Пользователь №: 1 414
Спасибо сказали: 0 раз(а)



Проблема в том что если до 50 Пунктов лося спасать, то статистика портится(
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 11.7.2007, 18:45
Сообщение #43





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



to NoName:
Вот мыслишка есть любопытная. Для её практической реализации необходмо -

Код
//=====начало поиска экстремумов ===========================    
//----------------------------------------------------------

{    
double peak1=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, 0);
int    Bar=1;  
double zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);

//=== Ищем 2 пик =====
while (zz==0)
{
Bar++;                   //пока индикатор=0 сдвигаемся на 1 бар
zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);
}      
//=== Нашли 2 пик =====
}    
double peak2=zz;
//Print ("пик1 ", peak1, " пик2 ", peak2);        //нашли второй экстремум  

Необходимо отыскать третий пик (впадину). Т. е. третий экстремум. Никак не соображу, - что нужно сюда для этого добавить!
Если не трудно, - подскажи, пож.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergey_n
сообщение 11.7.2007, 19:15
Сообщение #44





Группа: Активный участник
Сообщений: 22
Регистрация: 5.7.2007
Пользователь №: 1 414
Спасибо сказали: 0 раз(а)



Привет, я со старыми вопросами разобрался, вот еще пару
1) функция return(0) , возвращает в самое начало (к start), если она находится в куче {{}},или в начало своих внутренних скобок?
2) какие индикаторы лучше всего показывают выход из хеджирования, и может быть видели готовые блоки или советники работающие по такому принципу?
А насчет экстремуна, я думаю, такой же цикл while только переменную поменять на пик3, так как переменная bar имеет значение 2-го экстремуна от него и будет перебор.
С уважением С.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 11.7.2007, 20:22
Сообщение #45





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Привет.
1) Оператор return завершает работу функции (в каком бы месте он не находился). Если он встречается в функции Start() то она завершается до прихода следующего тика.
2) Тут я не подскажу ничего smile.gif Никогда с хеджами не сталкивался.
Третий экстремум можно найти в цикле так же как и второй.

Удачиwink.gif
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergey_n
сообщение 12.7.2007, 11:57
Сообщение #46





Группа: Активный участник
Сообщений: 22
Регистрация: 5.7.2007
Пользователь №: 1 414
Спасибо сказали: 0 раз(а)



То есть, если return в середине программы то он возвращает в начало?
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 12.7.2007, 12:13
Сообщение #47





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Код
//=====начало поиска экстремумов ===========================    
//----------------------------------------------------------

{    
double peak1=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, 0);
int    Bar=1;  
double zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);

//=== Ищем 2 пик =====
while (zz==0)
{
Bar++;                   //пока индикатор=0 сдвигаемся на 1 бар
zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);
}      
//=== Нашли 2 пик =====
double peak2=zz;
//Print ("пик1 ", peak1, " пик2 ", peak2);        //нашли второй экстремум
//=== Ищем 3 пик =====
Bar++;
while (zz==0)
{
Bar++;                   //пока индикатор=0 сдвигаемся на 1 бар
zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);
}      
double peak3=zz;
}


Вобщем идея такая. Не проверял, но, думаю, должно работать.

Цитата(Sergey_n @ 12.7.2007, 14:57) *

То есть, если return в середине программы то он возвращает в начало?

Нет, он завершает выполнение функции. А что будет происходить дальше зависит от программы. Если return встречается в функции Start() - то она прекращает свою работу. Снова она запустится по приходу нового тика. Если return встречается где-то в пользовательской функции - то аналогично, прекращается её работа и управление передаётся программе вызвавшей эту функцию.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
Sergey_n
сообщение 12.7.2007, 17:24
Сообщение #48





Группа: Активный участник
Сообщений: 22
Регистрация: 5.7.2007
Пользователь №: 1 414
Спасибо сказали: 0 раз(а)



Помогите пожалуйста.
Тут такая делема: Допустим, открывается ордер на покупку и одновременно ставится отложенный ордер на продажу, как сделать так чтобы если по ордеру сработал Тейкпрофит, удалить отложенный ордер? Проблема в том, что там еще могут быть сделки нужно что-то с номером ордера поколдовать, так чтобы отложенный ордер закрывался тока тот, который был открыт именно тем ордером, который по профиту закрылся.
Может вы знаете, как вести точный учет номеров ордера?
С уважение Сергей.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
leonid553
сообщение 12.7.2007, 18:04
Сообщение #49





Группа: Активный участник
Сообщений: 2 002
Регистрация: 14.4.2006
Из: г.Самара
Пользователь №: 28
Спасибо сказали: 11 раз(а)



Цитата(NoName @ 12.7.2007, 12:13) *

Код
//=====начало поиска экстремумов ===========================    
//----------------------------------------------------------

//=== Ищем 3 пик =====
Bar++;
while (zz==0)
{
Bar++;                   //пока индикатор=0 сдвигаемся на 1 бар
zz=iCustom(NULL, 0, "ZUP_v49mod", minPercent, minSize, minBars, 0, Bar);
}      
double peak3=zz;
}


Вобщем идея такая. Не проверял, но, думаю, должно работать.


Благодарю! Сейчас проверим.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения
NoName
сообщение 13.7.2007, 5:53
Сообщение #50





Группа: Активный участник
Сообщений: 514
Регистрация: 1.5.2006
Из: Украина, Кременчуг
Пользователь №: 146
Спасибо сказали: 0 раз(а)



Цитата(Sergey_n @ 12.7.2007, 20:24) *

Помогите пожалуйста.
Тут такая делема: Допустим, открывается ордер на покупку и одновременно ставится отложенный ордер на продажу, как сделать так чтобы если по ордеру сработал Тейкпрофит, удалить отложенный ордер? Проблема в том, что там еще могут быть сделки нужно что-то с номером ордера поколдовать, так чтобы отложенный ордер закрывался тока тот, который был открыт именно тем ордером, который по профиту закрылся.
Может вы знаете, как вести точный учет номеров ордера?
С уважение Сергей.


Это вопрос весьма обширный. Данные статьи помогут Вам понять принцип построения системы учёта ордеров в советнике:

http://articles.mql4.com/ru/126 - Управление ордерами – это просто
http://articles.mql4.com/ru/114 - Учёт ордеров в большой программе
http://articles.mql4.com/ru/105 - MagicNumber – "магический" идентификатор ордера

Кроме того, статьи Rosh'а:
http://old.alpari.org/ru/experts/articles/8.html - 7. Ордера в MetaTrader4
http://old.alpari.org/ru/experts/articles/9.html - 8. Закрытие и удаление ордеров

На мой взгляд, это необходимый минимум, который нужно усвоить, для того что бы решать Вашу задачу.
Пользователь в офлайнеКарточка пользователяОтправить личное сообщение
Вернуться в начало страницы
+Ответить с цитированием данного сообщения

8 страниц V « < 3 4 5 6 7 > » 
Ответить в эту темуОткрыть новую тему

 



- Текстовая версия Сейчас: 19.3.2026, 16:48