Ответ
 
Опции темы
Старый 10.10.2012, 07:32   #441 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,255
Репутация: 1966
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 349
Поблагодарили 1,895 раз(а) в 1,071 сообщениях
Поинты: 1276
Отправить сообщение для Ugar с помощью ICQ
Сообщение от wiuty Посмотреть сообщение
Подскажите пожалуйста, как заставить советника работать на счете ECN (Альпари). На NDD и на стандарте у других дц работает без проблем.
Нужно сделать так что бы ордера открывались без стопов и тейков, а стопы и тейки добавлять потом, модификацией ордера.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (10.10.2012), wiuty (10.10.2012)
Старый 10.10.2012, 09:45   #442 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
Сообщение от hoz Посмотреть сообщение
При выводе на печать параметра OBJPROP_ANGLE всегда выдаётся следующее не зависимо от реального угла:

PHP код:
2012.10.09 17:44:53    AngleByMa AUDJPY.5,M5OBJPROP_ANGLE 13 

Я не верно написал, исправить уже нет возможности. Вот что я выводил вообще на печать. и вообще тот участок кода:

PHP код:
    ObjectCreate("trendLine",OBJ_TREND,0,iTime(Symbol(),maTF,shiftBarsBack2),point2OfMa,iTime(Symbol(),maTF,shiftBarsBack1),point1OfMa);
   
// ObjectCreate("hLne",OBJ_HLINE,point2OfMa,0);
    
ObjectSet("trendLine",OBJPROP_COLOR,Black);
    
ObjectSet("trendLine",OBJPROP_WIDTH,4);
    
ObjectSet("trendLine",OBJPROP_RAY,false);
    
WindowRedraw();
    
double angle ObjectGet("trendLine",OBJPROP_ANGLE);
    Print(
"angle: ",angle); 

На выходе постоянно 0:


Код:
2012.10.10 11:43:03	AngleByMa AUDJPY.5,M5: angle: 0
2012.10.10 11:43:03	AngleByMa AUDJPY.5,M5: initialized

Почему не возвращается значение угла?
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 10.10.2012, 10:47   #443 (permalink)
Активный участник
 
Аватар для 3Nymous
 
Регистрация: 03.10.2011
Сообщений: 279
Репутация: 126
3Nymous 3Nymous
Сказал(а) спасибо: 195
Поблагодарили 123 раз(а) в 74 сообщениях
Поинты: 65
Сообщение от hoz Посмотреть сообщение
Почему не возвращается значение угла?
хелп надо внимательнее читать...
это свойство только для объекта OBJ_TRENDBYANGLE
3Nymous вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (10.10.2012)
Старый 10.10.2012, 12:08   #444 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
Сообщение от 3Nymous Посмотреть сообщение
хелп надо внимательнее читать...
это свойство только для объекта OBJ_TRENDBYANGLE
Так я уже пробывал тоже. Если в коде:
PHP код:
ObjectCreate("trendLine",OBJ_TRENDBYANGLE,0,iTime(Symbol(),maTF,shiftBarsBack2),pointOfMaLast,iTime(Symbol(),maTF,shiftBarsBack1),pointOfMaCurr); 

Заменить OBJ_TREND на OBJ_TRENDBYANGLE, то отрисовывается вообще какая-то чушь, почти горизонтально всегда. И как ни крути, ничего не меняется.







В журнале тоже постоянно нули, как видно на графике. Координаты 2 там привязаны к машке, а на графике они вообще непонятно где...
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 10.10.2012, 12:25   #445 (permalink)
Активный участник
 
Аватар для 3Nymous
 
Регистрация: 03.10.2011
Сообщений: 279
Репутация: 126
3Nymous 3Nymous
Сказал(а) спасибо: 195
Поблагодарили 123 раз(а) в 74 сообщениях
Поинты: 65
Сообщение от hoz Посмотреть сообщение
Заменить OBJ_TREND на OBJ_TRENDBYANGLE, то отрисовывается вообще какая-то чушь, почти горизонтально всегда. И как ни крути, ничего не меняется.
теперь читай с какими параметрами создавать OBJ_TRENDBYANGLE...

еще подсказка...
угол, вещь относительная, если линия привязана к двум точкам - поменял масштаб, и угол изменился )
а вообще, вспоминай геометрию, школьный курс "как найти угол прямоугольного треугольника"
3Nymous вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (10.10.2012)
Старый 10.10.2012, 13:56   #446 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
Сообщение от 3Nymous Посмотреть сообщение
теперь читай с какими параметрами создавать OBJ_TRENDBYANGLE...
Читал, и не один раз читал..



OBJ_TRENDBYANGLE Трендовая линия по углу. Использует 2 координаты, либо первую координату и угол. Для установки угла линии (свойство OBJPROP_ANGLE) используется функция ObjectSet()

Первый вариант построения по 2 координатам. Я так и сделал. Вот последний вариант:

PHP код:
 ObjectCreate("trendLine",OBJ_TRENDBYANGLE,0,Time[shiftBarsBack2],pointOfMaLast,Time[shiftBarsBack1],pointOfMaCurr); 

Что не так? Всё по документации... Ведь там сказано: Трендовая линия по углу. Использует 2 координаты, либо первую координату и угол. Я выбрал первый вариант по 2 координатам:Использует 2 координаты

Сообщение от 3Nymous Посмотреть сообщение
а вообще, вспоминай геометрию, школьный курс "как найти угол прямоугольного треугольника"

Об этом я тоже думал. Через тот же тангенс. Но для этого нам нужно знать катет и гипотенузу. А это уже откуда взять? Да и в чём их измерить? Ведь это величины разного происхождения.. цена и время.


Сообщение от 3Nymous Посмотреть сообщение
угол, вещь относительная, если линия привязана к двум точкам - поменял масштаб, и угол изменился )

Мне это не важно..
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 10.10.2012, 14:33   #447 (permalink)
Активный участник
 
Аватар для 3Nymous
 
Регистрация: 03.10.2011
Сообщений: 279
Репутация: 126
3Nymous 3Nymous
Сказал(а) спасибо: 195
Поблагодарили 123 раз(а) в 74 сообщениях
Поинты: 65
Сообщение от hoz Посмотреть сообщение
Я выбрал первый вариант по 2 координатам:Использует 2 координаты
используй ObjectSet...
но OBJPROP_ANGLE сможешь прочитать только если сам туда чего-нить запишешь

Цитата:
Но для этого нам нужно знать катет и гипотенузу. А это уже откуда взять? Да и в чём их измерить? Ведь это величины разного происхождения.. цена и время.
прояви смекалку, придумай как привести оба значения в одну систему координат, тем более тебе не критична точность вычисления угла... попробуй привязаться к пикселям, например... я сам никогда этим не озадачивался...

имхо, проблема у тебя с доками потому что хелпы пишут программисты и для программистов ))
т.е. читай и понимай как программист... привыкай, а не возмущайся... и ищи решения... постоянный поиск решений - это и есть работа программиста...
3Nymous вне форума   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (10.10.2012)
Старый 10.10.2012, 22:59   #448 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
В общем-то это даже и хорошо, что такие как ты 3Nymous себя так ведут. Я долбался 3 дня и получил бесценный опыт. Всё реализовал, и даже больше чем ожидал.
Хотя знакомые программисты мне утверждали, что я не прав, и что такого не сделать. И т.д. и т.п.
Но у меня нет рамок, я открыт новому, в отличие от тех кто привык верить кому-то на слово. И знаю, что только так можно достичь любой цели. Всё, спасибо за непомощ
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.10.2012, 10:13   #449 (permalink)
Новичок форума
 
Аватар для gold_traid
 
Регистрация: 24.08.2012
Сообщений: 108
Репутация: 28
gold_traid
Сказал(а) спасибо: 28
Поблагодарили 27 раз(а) в 17 сообщениях
Поинты: 24
Отправить сообщение для gold_traid с помощью ICQ
Доброго времени суток господа программисты!Подскажите пожалуйста как заставить советника открывать одновреммено не одну позицию ну а скажем 5-7 то сть получается так индикаторы дают сигнал на покупку(продажу) и вот тут нужно чтоб было 5-7 открытых ползиций
gold_traid вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.10.2012, 12:00   #450 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от gold_traid Посмотреть сообщение
Доброго времени суток господа программисты!Подскажите пожалуйста как заставить советника открывать одновреммено не одну позицию ну а скажем 5-7 то сть получается так индикаторы дают сигнал на покупку(продажу) и вот тут нужно чтоб было 5-7 открытых ползиций
1)Перед каждым открытием позиции подсчитывать количество открытых ордеров и ввести условие чтобы открывалось не больше Х ордеров.

2)Через функцию for
После каждой успешной итерации(открытие ордера) добавлять в переменную Х еденицу. Цыкл заканчивать тогда когда Х станет = ограниченому количеству ордеров.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 14.10.2012, 12:06   #451 (permalink)
Новичок форума
 
Аватар для gold_traid
 
Регистрация: 24.08.2012
Сообщений: 108
Репутация: 28
gold_traid
Сказал(а) спасибо: 28
Поблагодарили 27 раз(а) в 17 сообщениях
Поинты: 24
Отправить сообщение для gold_traid с помощью ICQ
Сообщение от eevviill Посмотреть сообщение
1)Перед каждым открытием позиции подсчитывать количество открытых ордеров и ввести условие чтобы открывалось не больше Х ордеров.

2)Через функцию for
После каждой успешной итерации(открытие ордера) добавлять в переменную Х еденицу. Цыкл заканчивать тогда когда Х станет = ограниченому количеству ордеров.
я так понимаю вот тут надо
PHP код:
for (int l_pos_308 0l_pos_308 l_ord_total_4l_pos_308++) 
gold_traid вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 15.10.2012, 00:30   #452 (permalink)
Новичок форума
 
Аватар для joseph
 
Регистрация: 07.12.2009
Сообщений: 13
Репутация: -2
joseph
Сказал(а) спасибо: 3
Поблагодарили 1 раз в 1 сообщении
Поинты: 2

По умолчанию нужна помощь


Подскажите,плиз, как вынести в некие переменные точки A,B,C ,чтобы потом с ними можно было работать .Точки A & B это пересечение свечек с линией , а С это максимум свечей между А и В .Причем между А и В должна быть хотябы одна свеча и она должна не касаться линии.
В учебнике про это не нашел. Или может есть советник с подобными приемами ?
Миниатюры:
Нажмите на изображение для увеличения
Название: 1.gif
Просмотров: 13
Размер:	12.6 Кб
ID:	90656  
joseph вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 15.10.2012, 07:26   #453 (permalink)
Заблокирован
За второе место в конкурсе 

 
Аватар для eevviill
 
Регистрация: 30.07.2009
Сообщений: 5,474
Репутация: 9022
eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill eevviill
Сказал(а) спасибо: 13,680
Поблагодарили 9,022 раз(а) в 3,179 сообщениях
Поинты: 1105
Отправить сообщение для eevviill с помощью Skype™
Сообщение от gold_traid Посмотреть сообщение
я так понимаю вот тут надо
PHP код:
for (int l_pos_308 0l_pos_308 l_ord_total_4l_pos_308++) 
Да.
eevviill вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 15.10.2012, 07:33   #454 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,255
Репутация: 1966
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 349
Поблагодарили 1,895 раз(а) в 1,071 сообщениях
Поинты: 1276
Отправить сообщение для Ugar с помощью ICQ
Сообщение от joseph Посмотреть сообщение
Подскажите,плиз, как вынести в некие переменные точки A,B,C ,чтобы потом с ними можно было работать .Точки A & B это пересечение свечек с линией , а С это максимум свечей между А и В .Причем между А и В должна быть хотябы одна свеча и она должна не касаться линии.
В учебнике про это не нашел. Или может есть советник с подобными приемами ?
Не всё есть в учебнике. Так и должно быть. Пора переходить на справочник.
_http://docs.mql4.com/ru/objects/ObjectGet
Доставай время,
_http://docs.mql4.com/ru/series/iBarShift
вычисляй из него № бара.
Доставай цену линии на этом баре. Проверяй пробил ли бар линию. Если нет переходи к следующему бару...
Так найдёшь все бары которые пробивают линию.
_http://docs.mql4.com/ru/series/iHighest
Поможет найти С

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 15.10.2012 в 07:41.
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
2 пользователя(ей) сказали cпасибо:
eevviill (15.10.2012), joseph (15.10.2012)
Старый 15.10.2012, 23:09   #455 (permalink)
Заблокирован
 
Аватар для Forex-man
 
Регистрация: 01.02.2012
Сообщений: 76
Репутация: 30
Forex-man
Сказал(а) спасибо: 0
Поблагодарили 29 раз(а) в 21 сообщениях
Поинты: 0
Отправить сообщение для Forex-man с помощью Skype™
Привет всем.Подскажите как отвязывать советник от dll,он уже декомпильнутый,но его нужно так сказать вылечить.Как это делается?
Forex-man вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 18.10.2012, 15:14   #456 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
Сообщение от Forex-man Посмотреть сообщение
Привет всем.Подскажите как отвязывать советник от dll,он уже декомпильнутый,но его нужно так сказать вылечить.Как это делается?
Всё что есть в dll перенести в совок и из совка убрать упоминание про dll по названию dll. Суть такая..
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 26.10.2012, 10:21   #457 (permalink)
Местный житель
 
Аватар для xsyr
 
Регистрация: 28.07.2012
Сообщений: 408
Репутация: 266
xsyr xsyr xsyr
Сказал(а) спасибо: 109
Поблагодарили 265 раз(а) в 76 сообщениях
Поинты: 135
Как сделать так чтобы лот всегда соответствовал плечу 1:300, например при десяти долларах на депозите объем 0,03; при 7 долларах - 0,02 и т.д., или так вообще нельзя сделать?

Последний раз редактировалось xsyr; 26.10.2012 в 11:01.
xsyr вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 26.10.2012, 14:48   #458 (permalink)
Элитный участник
 
Аватар для Ugar
 
Регистрация: 13.03.2009
Сообщений: 2,255
Репутация: 1966
Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar Ugar
Сказал(а) спасибо: 349
Поблагодарили 1,895 раз(а) в 1,071 сообщениях
Поинты: 1276
Отправить сообщение для Ugar с помощью ICQ
Сообщение от xsyr Посмотреть сообщение
Как сделать так чтобы лот всегда соответствовал плечу 1:300, например при десяти долларах на депозите объем 0,03; при 7 долларах - 0,02 и т.д., или так вообще нельзя сделать?
Напиши на бумажке формулу по которой считаешь лот, потом напиши всё то же самое в языке программирования. Не забудь нормировать полученный лот, под минимальный, максимальный и шаг изменения.
Но это пролезет только если ДЦ даёт болшее кредитное плечё, иначе при открытии ордера получишь сообщение об ошибке, что бабла на счёте не хватает.

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ugar на форуме   Ответить с цитированиемОтветить с цитированием  
Пользователь сказал cпасибо:
eevviill (26.10.2012)
Старый 06.11.2012, 19:18   #459 (permalink)
hoz
Активный участник
 
Аватар для hoz
 
Регистрация: 01.04.2011
Сообщений: 530
Репутация: 111
hoz hoz
Сказал(а) спасибо: 59
Поблагодарили 112 раз(а) в 88 сообщениях
Поинты: 538
Отправить сообщение для hoz с помощью ICQ
Вот функция поиска своих ордеров, которая мне попалась когда я изучать какнаписать один эксперт:

PHP код:
void FindOrders()
{
// - 1 - == Инициализация переменных перед поиском ======================================
   
int total OrdersTotal() - 1;
   
g_type = -1;                                    // На текущий момент у нас нет позиций
// - 1 - == Окончание блока =============================================================
 
// - 2 - == Непосредственно поиск =======================================================
   
for (int i total>= 0i--)                // Используется весь список ордеров
      
if (OrderSelect(iSELECT_BY_POS))           // Убедимся, что ордер выбран
         
if (MathFloor(OrderMagicNumber()) == i_magicNumber &&// Ордер открыт
             
OrderSymbol() == Symbol())            // ..экспертом, который прикреплен к..
         
{                                         // ..текущей паре
            
g_ticket OrderTicket();              // Запишем данные ордера
            
g_type OrderType();
         } 
// - 2 - == Окончание блока =============================================================

Для меня не совсем понятен участок:

PHP код:
 if (MathFloor(OrderMagicNumber()) == i_magicNumber 
Зачем использовать функцию MathFloor для мейджика, если мейджик прописан во входных данных и он целый? Какой смысл его "округлять", если он и так целый? Есть ли тут вообще смысл?
hoz вне форума   Ответить с цитированиемОтветить с цитированием  
Старый 06.11.2012, 19:23   #460 (permalink)
Активный участник
 
Аватар для Айбек
 
Регистрация: 27.09.2011
Сообщений: 65
Репутация: 39
Айбек
Сказал(а) спасибо: 12
Поблагодарили 38 раз(а) в 17 сообщениях
Поинты: 12
Всем привет! Кто нить подскажите функцию удаления отложенного ордера при срабатывании противоположного) Заранее спасибо)
Айбек вне форума   Ответить с цитированиемОтветить с цитированием  
Ответ

Метки
mql4, mql4 помощь, вопросы mql4


Опции темы

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

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



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


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