Закрытая тема
21.11.2011, 01:03
Аватар для borobor
borobor borobor вне форума Элитный участник
Регистрация: 03.05.2009 / Адрес: новосибирск / Сообщений: 935
Поблагодарили 1,556 раз(а) / Репутация: 1567
Уважаемые господа программисты,прошу Вас вынести в настройки тип и цвет линий.Спасибо большое.
забирайте
21.11.2011, 14:47
Аватар для TvikN
TvikN TvikN вне форума Активный участник
Регистрация: 30.01.2011 / Сообщений: 183
Поблагодарили 56 раз(а) / Репутация: 57
Спасибо borobor,но нельзя-ли вынести и тип линий.
21.11.2011, 18:46
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40

По умолчанию Помогите с написанием функции

Подскажите пожалуйста каким образом можно закрыть несколько профитных ордеров и самый убыточный, если общий профит этих позиций превышает заданное значение профита.
Пример:
Имеются открытые ордера
1) -100 п
2) -80 п
3) -40 п
4) -10 п
5) 20 п
6) 40 п
7) 60 п
Как автоматически выбрать и закрыть ордера 1, 5, 6, 7?
22.11.2011, 14:16
Аватар для seraliev66
seraliev66 seraliev66 вне форума Интересующийся
Регистрация: 13.08.2011 / Адрес: Тараз / Сообщений: 10
Поблагодарили 2 раз(а) / Репутация: 3
доброго все времени суток.
помогите подалуйста подлечить советник Vsignale_M1_LOT.ex4
требует лицензионній ключ.
за ранее благодарен)
Попробуй номер счёта вписать,у меня даже на другом ДЦ работает.
22.11.2011, 14:53
Аватар для expforex
expforex expforex вне форума Программиров
Регистрация: 11.01.2009 / Сообщений: 2,136
Поблагодарили 2,105 раз(а) / Репутация: 2163
Сообщение от: Energetik777
Подскажите пожалуйста каким образом можно закрыть несколько профитных ордеров и самый убыточный, если общий профит этих позиций превышает заданное значение профита.
Пример:
Имеются открытые ордера
1) -100 п
2) -80 п
3) -40 п
4) -10 п
5) 20 п
6) 40 п
7) 60 п
Как автоматически выбрать и закрыть ордера 1, 5, 6, 7?
все это делается функциями, тут скорее надо ставить вопрос кто напишет советник который Вам нужен.

но я бы закрыл не только 1&5&6&7 но и 4 например ведь сумма то больше
Советники на заказ! admin@expforex.com
Говорим Спасибо
22.11.2011, 15:44
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40
все это делается функциями, тут скорее надо ставить вопрос кто напишет советник который Вам нужен.

но я бы закрыл не только 1&5&6&7 но и 4 например ведь сумма то больше
Возможно заказать написание советника и было бы лучше, но хотелось бы самому разобраться. Если не возражаете то задам очередной вопрос по написанию данных функций.
С поиском ордера с максимальной просадкой проблем нет, то есть через цикл перебора нахожу интересующий меня ордер и создаю переменную хранящую номер тикета для дальнейших операций с ним.
Но как быть с профитными ордерами, ведь мы заранее не знаем количество ордеров, удовлетворяющих условию, то есть не можем сказать какое количество переменных нам понадобится для хранения номеров тикетов, с которыми в дальнейшем будем работать?
Или более простым решением данной задачи будет процедура подсчета общего профита у ордеров с положительным значением и если оно нас устраивает, то следующей функцией закрываем все профитные ордера.
22.11.2011, 17:33
Аватар для TvikN
TvikN TvikN вне форума Активный участник
Регистрация: 30.01.2011 / Сообщений: 183
Поблагодарили 56 раз(а) / Репутация: 57
Парни,очень Вас прошу,посмотреть советника.Выставляет стоп и тралит его,но не хочет закрывать сделки частями.Заранее премного благодарен.
PS.Может есть другой такой же.
22.11.2011, 17:36
Аватар для expforex
expforex expforex вне форума Программиров
Регистрация: 11.01.2009 / Сообщений: 2,136
Поблагодарили 2,105 раз(а) / Репутация: 2163
Парни,очень Вас прошу,посмотреть советника.Выставляет стоп и тралит его,но не хочет закрывать сделки частями.Заранее премного благодарен.
PS.Может есть другой такой же.
настрйоки тоже нужны
Советники на заказ! admin@expforex.com
Говорим Спасибо
TvikN 
22.11.2011, 18:33
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40
Сообщение от: Energetik777
Подскажите пожалуйста каким образом можно закрыть несколько профитных ордеров и самый убыточный, если общий профит этих позиций превышает заданное значение профита.
Пример:
Имеются открытые ордера
1) -100 п
2) -80 п
3) -40 п
4) -10 п
5) 20 п
6) 40 п
7) 60 п
Как автоматически выбрать и закрыть ордера 1, 5, 6, 7?
Всем спасибо, разобрался. Вопрос более не актуален.

Последний раз редактировалось Energetik777; 22.11.2011 в 19:25.
22.11.2011, 18:36
Аватар для expforex
expforex expforex вне форума Программиров
Регистрация: 11.01.2009 / Сообщений: 2,136
Поблагодарили 2,105 раз(а) / Репутация: 2163
Сообщение от: Energetik777
Всем спасибо, разобрался. Вопрос более не актуален.

PS: Есть ли функция выставляющая отложенные ордера по ценам открытия закрытых ордеров?
разобрались Выкладывайте код
Советники на заказ! admin@expforex.com
Говорим Спасибо
22.11.2011, 18:47
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40
разобрались Выкладывайте код
В общем то использовал все функции от KimIV с небольшой корректировкой, но если есть желание указать на ошибки, то пожалуйста.
Правда хочу заметить, что не все комментарии соответствуют действительности.

Последний раз редактировалось Energetik777; 22.11.2011 в 18:59.
22.11.2011, 20:01
Аватар для max020780
max020780 max020780 вне форума Новичок форума
Регистрация: 22.12.2009 / Сообщений: 50
Поблагодарили 12 раз(а) / Репутация: 11
Помогите правильно составить цикл !
необходимо чтоб допустим линия индикатора А<Б то на каждом новом баре открывался ордер на sell и наоборот если А>Б то на каждом новом баре ордер на BUY
22.11.2011, 20:47
Аватар для TvikN
TvikN TvikN вне форума Активный участник
Регистрация: 30.01.2011 / Сообщений: 183
Поблагодарили 56 раз(а) / Репутация: 57
настрйоки тоже нужны
Сделал сет с работающего с-ка.
22.11.2011, 22:49
Аватар для Variator
Variator Variator вне форума Новичок форума
Регистрация: 26.02.2011 / Сообщений: 47
Поблагодарили 5 раз(а) / Репутация: 6
Сообщение от: Energetik777
Возможно заказать написание советника и было бы лучше, но хотелось бы самому разобраться. Если не возражаете то задам очередной вопрос по написанию данных функций.
С поиском ордера с максимальной просадкой проблем нет, то есть через цикл перебора нахожу интересующий меня ордер и создаю переменную хранящую номер тикета для дальнейших операций с ним.
Но как быть с профитными ордерами, ведь мы заранее не знаем количество ордеров, удовлетворяющих условию, то есть не можем сказать какое количество переменных нам понадобится для хранения номеров тикетов, с которыми в дальнейшем будем работать?
Или более простым решением данной задачи будет процедура подсчета общего профита у ордеров с положительным значением и если оно нас устраивает, то следующей функцией закрываем все профитные ордера.
Ну запрашиваемые функции (закрытия ряда позиций с суммарным профитом превышающим определенную величину) реализовано в советнике например EUREKA v7.0 и выше, а для реализации возможности работы с неизвестным числом на данный момент переменных можете воспользоваться динамически изменяемыми массивами (ArrayResize), но в таких ситуациях лучше применять возможность усреднения с использаванием соманды встречного закрытия ордеров(orderclosedby)
Удачи и успехов в изучении MQL4
23.11.2011, 06:24
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40
Помогите правильно составить цикл !
необходимо чтоб допустим линия индикатора А<Б то на каждом новом баре открывался ордер на sell и наоборот если А>Б то на каждом новом баре ордер на BUY
Попробуйте добавить в условие на открытие такую строку кода:

if (High[0]==Open[0] && Low[0]==Open[0] && свои условия)
{
открытие ордеров
}
23.11.2011, 06:50
Аватар для venamax
venamax venamax вне форума = ##$$$## =
Регистрация: 27.04.2010 / Адрес: Russia / Сообщений: 371
Поблагодарили 1,490 раз(а) / Репутация: 1500
Помогите исправить баг...т.к. индюк тормозит - свечи новые уже на графике, а он стоит. При переключении туда-сюда, все встает на свои места.

Последний раз редактировалось venamax; 23.11.2011 в 06:59.
23.11.2011, 18:05
Аватар для max020780
max020780 max020780 вне форума Новичок форума
Регистрация: 22.12.2009 / Сообщений: 50
Поблагодарили 12 раз(а) / Репутация: 11
Сообщение от: Energetik777
Попробуйте добавить в условие на открытие такую строку кода:

if (High[0]==Open[0] && Low[0]==Open[0] && свои условия)
{
открытие ордеров
}
спасибо за ответ проблема оказывается зарыта глубже я не правильно определил параметры для сравнения по видимому ! помогите разобраться как мне правильно взять данные с индикатора чтобы когда высвечивалась нижняя тройка открывался ордер каждый бар допустим на бай а когда верхняя тройка в противоположную сторону.
посмотрите пожалуйста в чем здесь у меня ошибка!?
extern double Period1=5;
extern double Period2=13;
extern double Period3=34;
extern string Dev_Step_1="1,3";
extern string Dev_Step_2="8,5";
extern string Dev_Step_3="21,12";
extern int Symbol_1_Kod=140;
extern int Symbol_2_Kod=141;
extern int Symbol_3_Kod=142;
int New_Bar;
int TimeBar;


int start()
{

int P1= Period1 ;
int P2= Period2 ;
int P3= Period3 ;
if (TimeBar==Time[0]) return(0);
TimeBar=Time[0];

double L_4=iCustom(NULL,PERIOD_H1,"volna",P1,P2,P3,4,0);
double L_5=iCustom(NULL,PERIOD_H1,"volna",P1,P2,P3,5,0);



if (L_4<L_5 ) {

Comment("Работаем на SELL");

OrderSend(Symbol(),OP_SELL,0.01,Bid,30,0,Bid-250*Point);
}

if (L_4>L_5 ){
Comment("Работаем на BUY");

OrderSend(Symbol(),OP_BUY,0.01,Ask,30,0,Ask+250*Po int);
}

}
23.11.2011, 18:08
Аватар для Paramore
Paramore Paramore вне форума Активный участник
Регистрация: 30.10.2011 / Адрес: Челябинск / Сообщений: 75
Поблагодарили 31 раз(а) / Репутация: 32
Помогите исправить баг...т.к. индюк тормозит - свечи новые уже на графике, а он стоит. При переключении туда-сюда, все встает на свои места.
Что в журнале пишет? что нить там появляется из записей?
23.11.2011, 19:27
Аватар для Energetik777
Energetik777 Energetik777 вне форума Активный участник
Регистрация: 17.07.2011 / Сообщений: 70
Поблагодарили 39 раз(а) / Репутация: 40
спасибо за ответ проблема оказывается зарыта глубже я не правильно определил параметры для сравнения по видимому ! помогите разобраться как мне правильно взять данные с индикатора чтобы когда высвечивалась нижняя тройка открывался ордер каждый бар допустим на бай а когда верхняя тройка в противоположную сторону.
посмотрите пожалуйста в чем здесь у меня ошибка!?
Сам индюк нужно смотреть глубже, но то что видно на первый взгляд:
Параметры индюка можно не вытаскивать во внешние переменные, они используются в индикаторе по умолчанию.
Ну и по коду индюка видно, что он перерисовывает свои значения, то есть профитную систему вы с ним скорее всего не составите.
24.11.2011, 00:14
Аватар для borobor
borobor borobor вне форума Элитный участник
Регистрация: 03.05.2009 / Адрес: новосибирск / Сообщений: 935
Поблагодарили 1,556 раз(а) / Репутация: 1567
спасибо за ответ проблема оказывается зарыта глубже я не правильно определил параметры для сравнения по видимому ! помогите разобраться как мне правильно взять данные с индикатора чтобы когда высвечивалась нижняя тройка открывался ордер каждый бар допустим на бай а когда верхняя тройка в противоположную сторону.
посмотрите пожалуйста в чем здесь у меня ошибка!?
extern double Period1=5;
extern double Period2=13;
extern double Period3=34;
extern string Dev_Step_1="1,3";
extern string Dev_Step_2="8,5";
extern string Dev_Step_3="21,12";
extern int Symbol_1_Kod=140;
extern int Symbol_2_Kod=141;
extern int Symbol_3_Kod=142;
int New_Bar;
int TimeBar;


int start()
{

int P1= Period1 ;
int P2= Period2 ;
int P3= Period3 ;
if (TimeBar==Time[0]) return(0);
TimeBar=Time[0];

double L_4=iCustom(NULL,PERIOD_H1,"volna",P1,P2,P3,4,0);
double L_5=iCustom(NULL,PERIOD_H1,"volna",P1,P2,P3,5,0);



if (L_4<L_5 ) {

Comment("Работаем на SELL");

OrderSend(Symbol(),OP_SELL,0.01,Bid,30,0,Bid-250*Point);
}

if (L_4>L_5 ){
Comment("Работаем на BUY");

OrderSend(Symbol(),OP_BUY,0.01,Ask,30,0,Ask+250*Po int);
}

}
у тебя неправильно прописаны сигналы бай и селл if (L_4>L_5 ) и if (L_4<L_5 )
по функциям индюк похож на зигзаг или фрактал(один не может быть меньше или больше другого)
поищи советники с этими индюками и посмотри как можно сделать
Закрытая тема

Метки
mql программирование, дописать индикатор, дописать эксперт, доработать советник, форекс программирование


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помощь профессионального программиста в написании МТС индикаторов советников. cmillion Поиск программиста, поиск заказов 96 05.09.2017 08:20
Написание экспертов, индикаторов. Улсуги VPS для ваших советников. RL.Maxim Temp, корзина, реклама 5 31.10.2009 21:55
Написание советников, индикаторов, скриптов для MT4 по Вашему ТЗ Impish Поиск программиста, поиск заказов 0 04.04.2009 21:30


Текущее время: 17:35. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO