Закрытая тема
25.06.2012, 07:41
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,035 раз(а) / Репутация: 9035
eevviill, Спасибо.
Я хотела бы вот эти строчки
SetIndexBuffer(3,dnArrow); SetIndexStyle(3,DRAW_ARROW); SetIndexArrow(5,242);
SetIndexBuffer(4,upArrow); SetIndexStyle(4,DRAW_ARROW); SetIndexArrow(6,241);
перенести, например, в TmaTrue with Distances.mq4, никак не получится нигде прописать?
Судя по тому что вы написали вам ещё надо доучивать mql4 чтобы менять индикаторы. Вы написали просто что буфер 3 и 4 рисовать данные с dn up Arrow, стиль стрелок и т.д. 2 индикатора в одном не выйдет. Почитайте мои уроки, может ситуация яснее станет.
Avril 
25.06.2012, 09:09
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4

По умолчанию повторно

Здравствуйте уважаемые. Если возможно, впишите пожалуйста в код советника "Лот от баланса".Буду Вам очень признателен.
С уважением Рефа
Здравствуйте Я в программировании неграмотный,но вот нашёл в инете следующее:

внешние переменные
double Lots = 0.1;//начальный лот
extern double MaximumRisk = 0.1;//прогресия лота на каждые 500 баланса +0.1 лот. например депозит стал 1000 лот =0.2, 1500 лот =0.3 итд
extern double DecreaseFactor = 3.0;
extern double balans = 500; //шаг баланса

далее функцию которая ниже ставите перед стартом.
double LotsOptimized() {
double minlot = MarketInfo(Symbol(), MODE_MINLOT);
double maxlot = MarketInfo(Symbol(), MODE_MAXLOT);
double lot = Lots;
int orders = OrdersHistoryTotal();
int losses = 0;
lot = NormalizeDouble(AccountFreeMargin() * MaximumRisk / balans, 2);
if (DecreaseFactor > 0.0) {
for (int i = orders - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) == FALSE) {
Print("Error in history!");
break;
}
if (OrderSymbol() != Symbol() || OrderType() > OP_SELL) continue;
if (OrderProfit() > 0.0) break;
if (OrderProfit() < 0.0) losses++;
}
if (losses > 1) lot = NormalizeDouble(lot - lot * losses / DecreaseFactor, 2);
}
if(lot < minlot) lot = minlot;
if(lot > maxlot) lot = maxlot;
return (lot);}

далее в коде находите функцию OrderSend и вставляете в нее где лот
LotsOptimized()

ticket=OrderSend(Symbol(),OP_BUY,LotsOptimized(),A sk,3,stop,Ask+Takeprofit*Point,"",MagicNumber,0,Gr een);


int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)

может быть подойдёт для данной совы
помогите пожалуйста
25.06.2012, 14:51
Аватар для Neo1
Neo1 Neo1 вне форума Активный участник
Регистрация: 18.02.2010 / Сообщений: 47
Поблагодарили 42 раз(а) / Репутация: 43
Добрый день! С индикатора просьба сделать MTF версию, заранее спасибо! ОЧЕНЬ Нужен
25.06.2012, 18:26
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,035 раз(а) / Репутация: 9035
Здравствуйте Я в программировании неграмотный,но вот нашёл в инете следующее:

внешние переменные
double Lots = 0.1;//начальный лот
extern double MaximumRisk = 0.1;//прогресия лота на каждые 500 баланса +0.1 лот. например депозит стал 1000 лот =0.2, 1500 лот =0.3 итд
extern double DecreaseFactor = 3.0;
extern double balans = 500; //шаг баланса

далее функцию которая ниже ставите перед стартом.
double LotsOptimized() {
double minlot = MarketInfo(Symbol(), MODE_MINLOT);
double maxlot = MarketInfo(Symbol(), MODE_MAXLOT);
double lot = Lots;
int orders = OrdersHistoryTotal();
int losses = 0;
lot = NormalizeDouble(AccountFreeMargin() * MaximumRisk / balans, 2);
if (DecreaseFactor > 0.0) {
for (int i = orders - 1; i >= 0; i--) {
if (OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) == FALSE) {
Print("Error in history!");
break;
}
if (OrderSymbol() != Symbol() || OrderType() > OP_SELL) continue;
if (OrderProfit() > 0.0) break;
if (OrderProfit() < 0.0) losses++;
}
if (losses > 1) lot = NormalizeDouble(lot - lot * losses / DecreaseFactor, 2);
}
if(lot < minlot) lot = minlot;
if(lot > maxlot) lot = maxlot;
return (lot);}

далее в коде находите функцию OrderSend и вставляете в нее где лот
LotsOptimized()

ticket=OrderSend(Symbol(),OP_BUY,LotsOptimized(),A sk,3,stop,Ask+Takeprofit*Point,"",MagicNumber,0,Gr een);


int OrderSend( string symbol, int cmd, double volume, double price, int slippage, double stoploss, double takeprofit, string comment=NULL, int magic=0, datetime expiration=0, color arrow_color=CLR_NONE)

может быть подойдёт для данной совы
помогите пожалуйста
.
Refa 
25.06.2012, 19:10
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4
eevviill Огромное Вам СПАСИБО,только обьясните как работает функция extern double Risk = 1;

Последний раз редактировалось Refa; 25.06.2012 в 19:15.
25.06.2012, 19:23
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,035 раз(а) / Репутация: 9035
eevviill Огромное Вам СПАСИБО,только обьясните как работает функция extern double Risk = 1;
Это процент от депозита. Если перед ним переменная use_... =тру, то лот будет расчитыватся от депо. Если=фолс то стандартный лот.
25.06.2012, 19:42
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4
У меня депо 10000 плечо 1:500 ставлю:
extern double Lots = 1.0;
extern bool use_percent_of_deposit = true;
extern double Risk = 8;

Начинаю торговлю- лот=1,0

Ставлю extern double Risk любую цифру, всё равно лот=1

Может быть что то эдесь:
double GetLot(int Risk)
{double Free =AccountFreeMargin();
double One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED);
double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
double Step =MarketInfo(Symbol(),MODE_LOTSTEP);
double Lot =MathFloor(Free*Risk/100/One_Lot/Step)*Step;
if(Lot<Min_Lot) Lot=Min_Lot;
if(Lot>Max_Lot) Lot=Max_Lot;
if(Lot*One_Lot>Free) return(0.0);
return(Lot);}

Последний раз редактировалось Refa; 25.06.2012 в 19:56.
25.06.2012, 20:06
Аватар для eevviill
eevviill eevviill вне форума Заблокирован
За второе место в конкурсе 

Регистрация: 30.07.2009 / Сообщений: 5,474
Поблагодарили 9,035 раз(а) / Репутация: 9035
У меня депо 10000 плечо 1:500 ставлю:
extern double Lots = 1.0;
extern bool use_percent_of_deposit = true;
extern double Risk = 8;

Начинаю торговлю- лот=1,0

Ставлю extern double Risk любую цифру, всё равно лот=1

Может быть что то эдесь:
double GetLot(int Risk)
{double Free =AccountFreeMargin();
double One_Lot =MarketInfo(Symbol(),MODE_MARGINREQUIRED);
double Min_Lot =MarketInfo(Symbol(),MODE_MINLOT);
double Max_Lot =MarketInfo(Symbol(),MODE_MAXLOT);
double Step =MarketInfo(Symbol(),MODE_LOTSTEP);
double Lot =MathFloor(Free*Risk/100/One_Lot/Step)*Step;
if(Lot<Min_Lot) Lot=Min_Lot;
if(Lot>Max_Lot) Lot=Max_Lot;
if(Lot*One_Lot>Free) return(0.0);
return(Lot);}
Исправил.
Не. Просто расчёт лота в инит поставил. А в ините один раз расчёты ведутся, а баланс меняется.
25.06.2012, 20:21
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4
депо 10000 плечо 1:500 ставлю:
extern double Lots = 1.0;
extern bool use_percent_of_deposit = true;
extern double Risk =1;

Ордера открываются лот=3,08

Если extern double Risk =меньше 1,любое значение,то лот постоянно =0,01
26.06.2012, 03:49
Аватар для Yamakasi
Yamakasi Yamakasi вне форума Интересующийся
Регистрация: 04.03.2012 / Сообщений: 31
Поблагодарили 2 раз(а) / Репутация: 3
Уважаемые програмисты можно ли сделать из данного упрощенного советника FX Multi-Meter II от которого оставили только Стохастик сделать чтобы он работал как индикатор?
26.06.2012, 09:33
Регистрация: 05.04.2012 / Сообщений: 2,259
Поблагодарили 3,828 раз(а) / Репутация: 3873
Здравствуйте! Просьба к программистам заставить хаммера работать на счетах с рыночным исполнением, если это возможно конечно

Последний раз редактировалось progo; 09.07.2013 в 15:54.
26.06.2012, 11:36
Аватар для nik8181
nik8181 nik8181 вне форума Местный знаток
Регистрация: 12.09.2011 / Адрес: ОАЭ на ПМЖ / Сообщений: 645
Поблагодарили 501 раз(а) / Репутация: 507
депо 10000 плечо 1:500 ставлю:
extern double Lots = 1.0;
extern bool use_percent_of_deposit = true;
extern double Risk =1;

Ордера открываются лот=3,08

Если extern double Risk =меньше 1,любое значение,то лот постоянно =0,01
Refa приветствую, если не затруднит можешь сетом поделиться к данной сове?!?!?! Заранее спасибо!!!
26.06.2012, 11:54
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4
Refa приветствую, если не затруднит можешь сетом поделиться к данной сове?!?!?! Заранее спасибо!!!
Сначала нужно чтобы лот от баланса работал правильно,потом выкладываю сет(без обиды),на майском падении в почти 600 пунктов я заработал этим сетом 45 баксов,сет не жалко,но сначала правильная работа совы
26.06.2012, 12:08
Аватар для nik8181
nik8181 nik8181 вне форума Местный знаток
Регистрация: 12.09.2011 / Адрес: ОАЭ на ПМЖ / Сообщений: 645
Поблагодарили 501 раз(а) / Репутация: 507
Сначала нужно чтобы лот от баланса работал правильно,потом выкладываю сет(без обиды),на майском падении в почти 600 пунктов я заработал этим сетом 45 баксов,сет не жалко,но сначала правильная работа совы
Да какие обиды, а тот сет который без лота от баланса меня как бы больше интересует!
26.06.2012, 12:10
Аватар для Refa
Refa Refa вне форума Интересующийся
Регистрация: 13.09.2010 / Сообщений: 41
Поблагодарили 3 раз(а) / Репутация: 4
Вот eevviill появится ошибочку исправит,благодарность обьявим,выкладываем сет и пользуйтесь пожалуйста
26.06.2012, 12:13
Аватар для nik8181
nik8181 nik8181 вне форума Местный знаток
Регистрация: 12.09.2011 / Адрес: ОАЭ на ПМЖ / Сообщений: 645
Поблагодарили 501 раз(а) / Репутация: 507
Вот eevviill появится ошибочку исправит,благодарность обьявим,выкладываем сет и пользуйтесь пожалуйста
Да не вопрос а eevviill уважуха да респект!!!
26.06.2012, 20:01
Аватар для sochinik
sochinik sochinik вне форума Активный участник
Регистрация: 10.05.2012 / Адрес: Курск-Краснодар / Сообщений: 326
Поблагодарили 169 раз(а) / Репутация: 170
  • Отправить сообщение для sochinik с помощью ICQ Отправить сообщение для sochinik с помощью MSN
Ещё dll хочет и т.п.
Спасибо,но к сожалению функцию свою он не выполняет- не даёт работать котировкам с дукоса в тестере...извините за поздний ответ я уже не думал что кто то с ним поработает...

Уважаемые программисты есть соображение как снизить вероятность слива у советника " Crazy Scalper v1.0MM" - (Скальпинг с высокой скоростью) необходимо при срабатывании в сетке отложенного ордера - выставление такого же противоположного отложенника с тралом....Я нифига не сображаю в програмирование....возможно ли доработать этот советник или нет?- был бы рад пообщаться с програмистом в скайпе, так как сущность всех мыслей на бумаге выложить не смог....

Сова может давать прибыль до 1000% в месяц но не застрахована от слива- эту страховку можно сделать, но я понимаю торговлю на форексе( стаж 3 года) и нифига не смыслю в програмировании....

Последний раз редактировалось sochinik; 26.06.2012 в 20:24.
27.06.2012, 09:01
Аватар для kamilkz
kamilkz kamilkz на форуме Почётный гражданин
Регистрация: 10.03.2010 / Сообщений: 306
Поблагодарили 350 раз(а) / Репутация: 351
Посмотри может устроит
http://forexsystemsru.com/456943-post1477.html
27.06.2012, 09:55
Аватар для Влад2
Влад2 Влад2 вне форума Активный участник
Регистрация: 27.05.2012 / Сообщений: 113
Поблагодарили 46 раз(а) / Репутация: 47
Здравствуйте.
Есть такой широкоизвестный советник Scalp-Investor. Хотелось бы его слегка "подправить" не меняя логику работы, на мой взгляд она весьма удачна, если не использовать настройки по умолчанию. Проблемы такие: 1. супермедленно оптимизируется, вероятно в код заложена какая-то "бяка", которая это обеспечивает. Соответственно найти и уничтожить
бяку, быть может другая причина тормоза - вообщем убрать тормоз, ускорить оптимизацию. 2. в тестере стратегий постоянно мелькает ошибка Scalp-Investor v 2_1. GBPUSD,M1: OrderModify error 1. На демо такой ошибки нет, может она и не сказывается на реальной работе, и это глюк тестера, но раздражает, по-возможности устранить. Совсем мелочи,
вывести магик в настройки, прикрутить звук, желательно разный на открытие-срабатывание ордеров. И последнее советник широко известен, когда-то имел открытый код, сейчас распространяется по партнёрским ссылкам с привязкой к счёту, в связи с этим к нему приковано активное внимание ДЦ. Хотелось бы очень-очень, при компиляции модифицировать
(видоизменить) код до неузнаваемости, без ущерба функционалу, так чтобы автоматика ДЦ, не обнаруживала бы сабж. Понятно, что его можно будет распознать по логике работы, как что-то похожее, но таких похожих много. А с нестандартными настройками, другим магиком, звуком, он будет весьма оригинален. Надеюсь, на Вашу помощь. Основное конечно это "неузнаваемость" и скорость оптимизации.
27.06.2012, 09:57
Аватар для Влад2
Влад2 Влад2 вне форума Активный участник
Регистрация: 27.05.2012 / Сообщений: 113
Поблагодарили 46 раз(а) / Репутация: 47
Я смотрю его тут активно переделывают. А мне кажется его логика работы, практически идеальной.
Закрытая тема

Метки
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


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


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