Ответ
 
Опции темы
Старый 30.05.2016, 12:59   #8301 (permalink)
Интересующийся
 
Аватар для Prizr@k
 
Регистрация: 11.10.2011
Сообщений: 79
Репутация: 2
Prizr@k
Сказал(а) спасибо: 23
Поблагодарили 1 раз в 1 сообщении
Поинты: 78
Доброго времени суток! Решил поэкспериментировать с советником на открытии нового бара... сделки открывает хорошо, но при обратном сигнале открывает ордер и не закрывает противоположный... Посмотрите пожалуйста... мож возьмется кто?
Вложения:
Тип файла: mq4 CCI_peresechenie_mod.mq4 (19.5 Кб, 19 просмотров)
Prizr@k вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 13:24   #8302 (permalink)
Особый статус
 
Аватар для Novikov
 
Регистрация: 02.08.2012
Адрес: Днепр
Сообщений: 3,017
Репутация: 2509
Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov
Сказал(а) спасибо: 1,610
Поблагодарили 2,520 раз(а) в 1,258 сообщениях
Поинты: 2423
Отправить сообщение для Novikov с помощью Skype™
Пожалуйста, подскажите формулу, для реализации мартина по нескольким магикам.
например есть параметры:

лот=0,1 // размер ордера
мартин=1,6 // коэффициент мартина для увеличения последующих ордеров
шаг=50 // шаг просадки по нескольким магикам в валюте депозита
магики=1,2,3,4,5 // несколько магиков, используемых для суммарной просадки

У кого есть какие мысли?
За советы, заранее благодарю!
Novikov на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 15:25   #8303 (permalink)
Прохожий
 
Аватар для Alex Green
 
Регистрация: 21.09.2014
Сообщений: 333
Репутация: 839
Alex Green - Alex Green - Alex Green - Alex Green - Alex Green - Alex Green - Alex Green -
Сказал(а) спасибо: 239
Поблагодарили 838 раз(а) в 233 сообщениях
Поинты: 220
Сообщение от Novikov Посмотреть сообщение
Пожалуйста, подскажите формулу, для реализации мартина по нескольким магикам.
например есть параметры:

лот=0,1 // размер ордера
мартин=1,6 // коэффициент мартина для увеличения последующих ордеров
шаг=50 // шаг просадки по нескольким магикам в валюте депозита
магики=1,2,3,4,5 // несколько магиков, используемых для суммарной просадки

У кого есть какие мысли?
За советы, заранее благодарю!
Пары разные?
Alex Green вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 16:09   #8304 (permalink)
Особый статус
 
Аватар для Novikov
 
Регистрация: 02.08.2012
Адрес: Днепр
Сообщений: 3,017
Репутация: 2509
Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov
Сказал(а) спасибо: 1,610
Поблагодарили 2,520 раз(а) в 1,258 сообщениях
Поинты: 2423
Отправить сообщение для Novikov с помощью Skype™
Сообщение от Alex Green Посмотреть сообщение
Пары разные?
Да, пары разные, но открывается та пара, на которой стоит советник, при соблюдении просадки нескольких магиков нескольких пар.
Novikov на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 16:13   #8305 (permalink)
Элитный участник
 
Аватар для officialboob
 
Регистрация: 13.07.2013
Адрес: Moscow
Сообщений: 2,269
Репутация: 1260
officialboob officialboob officialboob officialboob officialboob officialboob officialboob officialboob officialboob
Сказал(а) спасибо: 63
Поблагодарили 1,301 раз(а) в 826 сообщениях
Поинты: 1467
Сообщение от well72 Посмотреть сообщение
Привет спецам!
Подскажите, как закодить условие пересечения линии, а точнее ценового уровня 00. Т.е., если аск = или > цены 00 - покупаем. Если бид = или < - продаем?

Например так.


PHP код:
bool result
PHP код:
if (!ExistPositions(Symbol(),OP_BUY,Magic) && (Ask >= Price)) {

result=OrderSend(Symbol(),OP_BUY...);

PHP код:
if (!ExistPositions(Symbol(),OP_SELL,Magic) && (Bid Price)) {

result=OrderSend(Symbol(),OP_SELL...);


PHP код:
//+----------------------------------------------------------------------------+
//|  Автор    : Ким Игорь В. aka KimIV,  http://www.kimiv.ru                   |
//+----------------------------------------------------------------------------+
//|  Версия   : 06.03.2008                                                     |
//|  Описание : Возвращает флаг существования позиций                          |
//+----------------------------------------------------------------------------+
//|  Параметры:                                                                |
//|    sy - наименование инструмента   (""   - любой символ,                   |
//|                                     NULL - текущий символ)                 |
//|    op - операция                   (-1   - любая позиция)                  |
//|    mn - MagicNumber                (-1   - любой магик)                    |
//|    ot - время открытия             ( 0   - любое время открытия)           |
//+----------------------------------------------------------------------------+
bool ExistPositions(string sy=""int op=-1int mn=-1datetime ot=0) {
  
int ik=OrdersTotal();
 
  if (
sy=="0"sy=Symbol();
  for (
i=0i<ki++) {
    if (
OrderSelect(iSELECT_BY_POSMODE_TRADES)) {
      if (
OrderSymbol()==sy || sy=="") {
        if (
OrderType()==OP_BUY || OrderType()==OP_SELL) {
          if (
op<|| OrderType()==op) {
            if (
mn<|| OrderMagicNumber()==mn) {
              if (
ot<=OrderOpenTime()) return(True);
            }
          }
        }
      }
    }
  }
  return(
False);


_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Всем бобра!
Алексея Бонифациевича Фіерсова (Пылесоса) на портянку!
officialboob вне форума   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
kamilkz (31.05.2016), well72 (30.05.2016)
Старый 30.05.2016, 16:42   #8306 (permalink)
Особый статус
 
Аватар для Novikov
 
Регистрация: 02.08.2012
Адрес: Днепр
Сообщений: 3,017
Репутация: 2509
Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov
Сказал(а) спасибо: 1,610
Поблагодарили 2,520 раз(а) в 1,258 сообщениях
Поинты: 2423
Отправить сообщение для Novikov с помощью Skype™
Сообщение от Alex Green Посмотреть сообщение
Берем ADR дней за 10 (20) по каждой паре. Получаем дневной потенциал движения каждой пары в пунктах. Находим размер лота для каждой пары таким образом, чтобы доходы в валюте депозита по каждой паре в случае прохождения ADR совпадали (например, на сегодня лот GBPJPY будет обратно пропорционален лоту EURJPY в соотношении 200/85 (ADR 10)). Это подстрахует на тот случай, если некоторые пары рванут "не туда". Просели на 50 - открываем лот*коэффициент на любой паре, т.к. стоимость потенциального движения с учетом начального лота на всех парах одинаковая. Как вариант, вместо ADR можно взять стоимость пункта в валюте депозита по каждой паре. Или комбинацию ADR\пункт. В любом случае, я бы размеры лотов сделал разными по парам.
Как-то так.
ненене, это все не то.
лоты одинаковые на всех парах, но могу и немного отличаться
формула приблизительно такая: шаг*сумма открытых лотов*10 + сумма геометрической прогрессии шага
только "сумма геометрической прогрессии шага" надо заменить, что бы не запоминать прошедшие шаги для суммирования
только мат расчет, без использования индикаторов
Novikov на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 16:43   #8307 (permalink)
Активный участник
 
Аватар для well72
 
Регистрация: 20.05.2011
Адрес: Северодвинск
Сообщений: 196
Репутация: 57
well72
Сказал(а) спасибо: 100
Поблагодарили 56 раз(а) в 31 сообщениях
Поинты: 71
officialboob, спасибо!
Теперь осталось сообразить, что с этим всем делать...)))
well72 на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 16:49   #8308 (permalink)
Особый статус
 
Аватар для Novikov
 
Регистрация: 02.08.2012
Адрес: Днепр
Сообщений: 3,017
Репутация: 2509
Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov Novikov
Сказал(а) спасибо: 1,610
Поблагодарили 2,520 раз(а) в 1,258 сообщениях
Поинты: 2423
Отправить сообщение для Novikov с помощью Skype™
Сообщение от Alex Green Посмотреть сообщение
А где в моей схеме индикатор? Голый мат.расчет!
ADR я интерпретировал как индикатор
Novikov на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Alex Green (30.05.2016)
Старый 30.05.2016, 16:51   #8309 (permalink)
Элитный участник
 
Аватар для officialboob
 
Регистрация: 13.07.2013
Адрес: Moscow
Сообщений: 2,269
Репутация: 1260
officialboob officialboob officialboob officialboob officialboob officialboob officialboob officialboob officialboob
Сказал(а) спасибо: 63
Поблагодарили 1,301 раз(а) в 826 сообщениях
Поинты: 1467
Сообщение от well72 Посмотреть сообщение
officialboob, спасибо!
Теперь осталось сообразить, что с этим всем делать...)))

Здесь много хороших примеров.

_http://www.kimiv.ru/index.php?option=com_remository&Itemid=13&func=sel ect&id=4

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Всем бобра!
Алексея Бонифациевича Фіерсова (Пылесоса) на портянку!
officialboob вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
well72 (30.05.2016)
Старый 30.05.2016, 17:58   #8310 (permalink)
Местный знаток
 
Аватар для MrGreen86
 
Регистрация: 12.01.2012
Сообщений: 651
Репутация: 923
MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 -
Сказал(а) спасибо: 121
Поблагодарили 923 раз(а) в 352 сообщениях
Поинты: 32
Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от Prizr@k Посмотреть сообщение
Доброго времени суток! Решил поэкспериментировать с советником на открытии нового бара... сделки открывает хорошо, но при обратном сигнале открывает ордер и не закрывает противоположный... Посмотрите пожалуйста... мож возьмется кто?
что-то вы тут накрутили такого что глаза на лоб лезут

if(op==1 && ordersTrade[OP_BUY]==0 && orders[OP_BUY]==0){
это вообще зачем?
чего вы добивались обращаясь к массиву через предопределенную переменную OP_BUY которая равна 0.
это одно и тоже что и написать:
if(op==1 && ordersTrade[0]==0 && orders[0]==0){

Или это например:
for(i=0;i<6;i++) orders[i]=0; //обнулим счетчики
есть замечательная функция ArrayInitialize

а вот это?
extern string _info0="D1,H4,H1,M30,M15,M5";
extern string sPeriod="M1";
зачем, если можно сделать так:
extern ENUM_TIMEFRAMES ePeriod = PERIOD_M1;

это так на скидку )

по вашему вопросу. вы с начала открываете селл по сигналу, затем у вас есть условие:
if(op==-1 && ExistPositions("",OP_BUY,magic) && GetTypeLastOpenPos("", magic)==0){
переводим:
если(сигнал селл И есть бай позиция И последняя позиция бай)

вот только как может быть последняя позиция бай если вы только что открыли селл? вот и не закрывается у вас ордер бай.
поместите закрытие перед открытиями или уберите проверку GetTypeLastOpenPos("", magic)==0

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

MqlLab.ru
MrGreen86 вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Prizr@k (30.05.2016)
Старый 30.05.2016, 18:27   #8311 (permalink)
Интересующийся
 
Аватар для Prizr@k
 
Регистрация: 11.10.2011
Сообщений: 79
Репутация: 2
Prizr@k
Сказал(а) спасибо: 23
Поблагодарили 1 раз в 1 сообщении
Поинты: 78
что-то вы тут накрутили такого что глаза на лоб лезут

if(op==1 && ordersTrade[OP_BUY]==0 && orders[OP_BUY]==0){
это вообще зачем?
чего вы добивались обращаясь к массиву через предопределенную переменную OP_BUY которая равна 0.
это одно и тоже что и написать:
if(op==1 && ordersTrade[0]==0 && orders[0]==0){

Или это например:
for(i=0;i<6;i++) orders[i]=0; //обнулим счетчики
есть замечательная функция ArrayInitialize

а вот это?
extern string _info0="D1,H4,H1,M30,M15,M5";
extern string sPeriod="M1";
зачем, если можно сделать так:
extern ENUM_TIMEFRAMES ePeriod = PERIOD_M1;

это так на скидку )

по вашему вопросу. вы с начала открываете селл по сигналу, затем у вас есть условие:
if(op==-1 && ExistPositions("",OP_BUY,magic) && GetTypeLastOpenPos("", magic)==0){
переводим:
если(сигнал селл И есть бай позиция И последняя позиция бай)

вот только как может быть последняя позиция бай если вы только что открыли селл? вот и не закрывается у вас ордер бай.
поместите закрытие перед открытиями или уберите проверку GetTypeLastOpenPos("", magic)==0

Здравствуйте, извините я не программист... грамотности в кодировке нет... не так давно начал изучать программирование... советник лепил по кускам... еще люди помогали с форума переворот сделок прикрепить... Вот абсолютно рабочая версия советника которая работает при пересечении индикатора... как появляется обратный сигнал ордер закрывается и открывается противоположный... захотел поэксперементировать на открытии нового бара, вот и обратился к специалистам форума...
Prizr@k вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 18:28   #8312 (permalink)
Интересующийся
 
Аватар для Prizr@k
 
Регистрация: 11.10.2011
Сообщений: 79
Репутация: 2
Prizr@k
Сказал(а) спасибо: 23
Поблагодарили 1 раз в 1 сообщении
Поинты: 78
вот сова
Вложения:
Тип файла: mq4 CCI_peresechenie_mod.mq4 (19.5 Кб, 22 просмотров)
Prizr@k вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 30.05.2016, 19:20   #8313 (permalink)
Местный знаток
 
Аватар для MrGreen86
 
Регистрация: 12.01.2012
Сообщений: 651
Репутация: 923
MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 -
Сказал(а) спасибо: 121
Поблагодарили 923 раз(а) в 352 сообщениях
Поинты: 32
Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от Prizr@k Посмотреть сообщение
вот сова
попробуйте так:
CCI_peresechenie_mod (1).mq4

может стоит начать изучать? mql4 простой язык и есть очень удобный просто учебник на Русском )

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

MqlLab.ru
MrGreen86 вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
Prizr@k (30.05.2016)
Старый 30.05.2016, 19:40   #8314 (permalink)
Интересующийся
 
Аватар для Prizr@k
 
Регистрация: 11.10.2011
Сообщений: 79
Репутация: 2
Prizr@k
Сказал(а) спасибо: 23
Поблагодарили 1 раз в 1 сообщении
Поинты: 78
что-то вы тут накрутили такого что глаза на лоб лезут

if(op==1 && ordersTrade[OP_BUY]==0 && orders[OP_BUY]==0){
это вообще зачем?
чего вы добивались обращаясь к массиву через предопределенную переменную OP_BUY которая равна 0.
это одно и тоже что и написать:
if(op==1 && ordersTrade[0]==0 && orders[0]==0){

Или это например:
for(i=0;i<6;i++) orders[i]=0; //обнулим счетчики
есть замечательная функция ArrayInitialize

а вот это?
extern string _info0="D1,H4,H1,M30,M15,M5";
extern string sPeriod="M1";
зачем, если можно сделать так:
extern ENUM_TIMEFRAMES ePeriod = PERIOD_M1;

это так на скидку )

по вашему вопросу. вы с начала открываете селл по сигналу, затем у вас есть условие:
if(op==-1 && ExistPositions("",OP_BUY,magic) && GetTypeLastOpenPos("", magic)==0){
переводим:
если(сигнал селл И есть бай позиция И последняя позиция бай)

вот только как может быть последняя позиция бай если вы только что открыли селл? вот и не закрывается у вас ордер бай.
поместите закрытие перед открытиями или уберите проверку GetTypeLastOpenPos("", magic)==0[/QUOTE]

[QUOTE=MrGreen86;1150760]попробуйте так:
Вложение 244592

может стоит начать изучать? mql4 простой язык и есть очень удобный просто учебник на Русском )[/QUO

Приму к сведению... спасибо за отклик... сейчас потестим...
Prizr@k вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 31.05.2016, 06:21   #8315 (permalink)
Активный участник
 
Аватар для well72
 
Регистрация: 20.05.2011
Адрес: Северодвинск
Сообщений: 196
Репутация: 57
well72
Сказал(а) спасибо: 100
Поблагодарили 56 раз(а) в 31 сообщениях
Поинты: 71
Всем привет!
Для новой ТС нужен был советник, который выставляет стоп и тейк по заданным значениям АТР. Такого у себя не нашел, но наткнулся вот на такой индикатор. Но он какой-то странный: сам ничего не выставляет (потому что индикатор, наверное). И не рисует. Можете посмотреть и что-нибудь с ним сделать? Хотя бы уровни пусть рисует, что ли) В идеале, конечно, советника такого бы... Может, есть такой и кто подскажет?
Вложения:
Тип файла: mq4 Auto SL-TP Setter v1.mq4 (8.8 Кб, 22 просмотров)
well72 на форуме   Ответить с цитированиемОтветить с цитированием  
Старый 31.05.2016, 07:22   #8316 (permalink)
Прохожий
 
Аватар для Alex Green
 
Регистрация: 21.09.2014
Сообщений: 333
Репутация: 839
Alex Green - Alex Green - Alex Green - Alex Green - Alex Green - Alex Green - Alex Green -
Сказал(а) спасибо: 239
Поблагодарили 838 раз(а) в 233 сообщениях
Поинты: 220
Сообщение от well72 Посмотреть сообщение
Всем привет!
Для новой ТС нужен был советник, который выставляет стоп и тейк по заданным значениям АТР. Такого у себя не нашел, но наткнулся вот на такой индикатор. Но он какой-то странный: сам ничего не выставляет (потому что индикатор, наверное). И не рисует. Можете посмотреть и что-нибудь с ним сделать? Хотя бы уровни пусть рисует, что ли) В идеале, конечно, советника такого бы... Может, есть такой и кто подскажет?

Так это же он и есть!
"This utility EA places Stoploss & TakeProfit if there are positions without them."

По каким параметрам определили, что это индикатор?
Alex Green вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 31.05.2016, 07:55   #8317 (permalink)
Интересующийся
 
Аватар для Prizr@k
 
Регистрация: 11.10.2011
Сообщений: 79
Репутация: 2
Prizr@k
Сказал(а) спасибо: 23
Поблагодарили 1 раз в 1 сообщении
Поинты: 78
попробуйте так:


может стоит начать изучать? mql4 простой язык и есть очень удобный просто учебник на Русском )[/QUOTE]

Советник все-таки открывает по два-три ордера в одном направлении и не хочет закрывать противоположную сделку ...
Prizr@k вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 31.05.2016, 07:56   #8318 (permalink)
Местный знаток
 
Аватар для MrGreen86
 
Регистрация: 12.01.2012
Сообщений: 651
Репутация: 923
MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 -
Сказал(а) спасибо: 121
Поблагодарили 923 раз(а) в 352 сообщениях
Поинты: 32
Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от Alex Green Посмотреть сообщение
Так это же он и есть!
подтверждаю, это и есть советник

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

MqlLab.ru
MrGreen86 вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 31.05.2016, 08:02   #8319 (permalink)
Местный знаток
 
Аватар для MrGreen86
 
Регистрация: 12.01.2012
Сообщений: 651
Репутация: 923
MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 - MrGreen86 -
Сказал(а) спасибо: 121
Поблагодарили 923 раз(а) в 352 сообщениях
Поинты: 32
Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от Prizr@k Посмотреть сообщение
попробуйте так:


может стоит начать изучать? mql4 простой язык и есть очень удобный просто учебник на Русском )
Советник все-таки открывает по два-три ордера в одном направлении и не хочет закрывать противоположную сделку ...[/QUOTE]

пришлось переписать
CCI_peresechenie_mod (1) (1).mq4

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

MqlLab.ru
MrGreen86 вне форума   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
IYG (31.05.2016), Prizr@k (31.05.2016)
Старый 31.05.2016, 08:03   #8320 (permalink)
Активный участник
 
Аватар для well72
 
Регистрация: 20.05.2011
Адрес: Северодвинск
Сообщений: 196
Репутация: 57
well72
Сказал(а) спасибо: 100
Поблагодарили 56 раз(а) в 31 сообщениях
Поинты: 71
Сообщение от Alex Green Посмотреть сообщение
Так это же он и есть!
"This utility EA places Stoploss & TakeProfit if there are positions without them."

По каким параметрам определили, что это индикатор?
Где-то, откуда скачал, наверное было написано, что индикатор. Хотя сам удивился - как индикатор может ставить стопы и тейки. Но как советник на график не встает, а встает как индикатор. Скрины внизу.
Миниатюры:
Нажмите на изображение для увеличения
Название: 1.jpg
Просмотров: 62
Размер:	259.3 Кб
ID:	244623   Нажмите на изображение для увеличения
Название: 2.jpg
Просмотров: 71
Размер:	195.4 Кб
ID:	244624  
well72 на форуме   Ответить с цитированиемОтветить с цитированием  
Ответ

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


Опции темы

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

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



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


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