Ответить
03.06.2015, 15:20
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Уважаемые программисты , помогите пожалуйста с экспертом.Добавить местоположение, размер и цвет,заранее спасибо.
чтобы что-то менять - нужен исходный код - mq4 файл.
если он у вас есть - отправьте, тогда посмотрим.
03.06.2015, 15:28
Аватар для want a million
want a million want a million вне форума Местный житель
Регистрация: 29.03.2013 / Адрес: Калуга / Сообщений: 408
Поблагодарили 275 раз(а) / Репутация: 276
Мистер зелёный,что то не так....... он лупит ордера на каждой новой свече,или ещё как то,но их реально немеренно....)))) ща скрин добавлю
03.06.2015, 15:32
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от: Капиталист
Привет ребятки! прошу помощи кто может подкрутить индикатор чтоб работал на меньших тф там по умолчанию день и час можно переделать чтоб был день и 30, 15, 5 минут?
спасибо!
все несколько сложней. для нижней линии используются данные дня вроде как. а для верхней: если параметр Hours 3 или более - тайм фрейм 15, анализ ведется на 4*Hours свечах
если параметр Hours 2 или меньше - тайм фрейм 5, анализ ведется на 12*Hours свечах.

я все это дело ампутировал и вывел настройки тайм фрейма и количества анализируемых баров в настройки:
extern ENUM_TIMEFRAMES MyLowHigh_TimeFrame = PERIOD_M5;
extern int MyHighLow_Bars = 20;
CurrencyPowerMeter_mod.mq4
03.06.2015, 15:34
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от: want a million
Мистер зелёный,что то не так....... он лупит ордера на каждой новой свече,или ещё как то,но их реально немеренно....)))) ща скрин добавлю
ну конечно, сигнал есть - открылась сделка, а вы как хотели? )))
сигнал на покупку в вашем советнике:
1) быстрая МА выше медленной МА
2) закрытие свечи выше быстрой МА

сигнал на продажу зеркально:
1) быстрая МА ниже медленной МА
2) закрытие свечи ниже быстрой МА

т.е. как вы видите промежутки где на каждой свече будут сигналы не только возможны - но и преобладают над местами где сигналов нет.
03.06.2015, 15:38
Аватар для want a million
want a million want a million вне форума Местный житель
Регистрация: 29.03.2013 / Адрес: Калуга / Сообщений: 408
Поблагодарили 275 раз(а) / Репутация: 276
вот смотрите,где обвёл...не прерывный сигнал бай,а он шпарит ордера на каждой свече.....а надо,что б открыл по сигналу,если профитнул,то открыл новый,если пошёл в минус и сигнал сменился,а в настройках реверс фальсе,то он бай оставляет висеть,и ещё селл открывает,и так далее....
03.06.2015, 15:40
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Всем добрый день.Можно ли сделать чтобы этот индикатор ставил только одну стрелку на продажу и покупку.
вы имеете ввиду чтобы не было нескольких стрелок подряд с 1 стороны? а было только чередование? сделал
3 MA Cross w_Alert v2 mod.mq4
Нажмите на изображение для увеличения
Название: SNAG_Program-0071.png
Просмотров: 141
Размер:	40.5 Кб
ID:	208377
03.06.2015, 15:41
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от: want a million
вот смотрите,где обвёл...не прерывный сигнал бай,а он шпарит ордера на каждой свече.....а надо,что б открыл по сигналу,если профитнул,то открыл новый,если пошёл в минус и сигнал сменился,а в настройках реверс фальсе,то он бай оставляет висеть,и ещё селл открывает,и так далее....
я вам для этого и добавил настройку many_orders
поставьте false и у него будет только 1 бай и 1 селл.
03.06.2015, 15:50
Аватар для want a million
want a million want a million вне форума Местный житель
Регистрация: 29.03.2013 / Адрес: Калуга / Сообщений: 408
Поблагодарили 275 раз(а) / Репутация: 276
я вам для этого и добавил настройку many_orders
поставьте false и у него будет только 1 бай и 1 селл.
опять не так. сейчас сформулирую....всё оставить как в оригинале,только добавить,что бы происходило открытие нового ордера при смене сигнала,не смотря на то,что там уже есть в рынке....сможете?
03.06.2015, 15:55
Аватар для want a million
want a million want a million вне форума Местный житель
Регистрация: 29.03.2013 / Адрес: Калуга / Сообщений: 408
Поблагодарили 275 раз(а) / Репутация: 276
вот смотрите,тут уже есть сигнал селл,но ордер он не открывает,потому что,был открыт до этого,пунктов на 150 ниже...... а надо что бы открывал ещё селл,при новом сигнале.... надеюсь у меня получилось объяснить....спасибо.
03.06.2015, 15:56
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
просьба доделать индикатор
при появлении окошка (алерта) добавить в текст уровень цены
когда произошел сигнал
или лучше выставлять на график ценовые отметки под цвет столбика внизу, как на рисунке
почту еще могли прикрутить


и в тестере почему-то не выходят окошки, в чем интересно дело...
добавил ценовые метки.
настройки:
AddPriceMark - отображение ценовых меток
PriceMarkSize - размер ценовых меток
Sonic_6 PVA Volumes (White)_mod.mq4
03.06.2015, 16:03
Аватар для MrGreen86
MrGreen86 MrGreen86 вне форума Местный знаток
Регистрация: 12.01.2012 / Сообщений: 683
Поблагодарили 972 раз(а) / Репутация: 972
  • Отправить сообщение для MrGreen86 с помощью Skype™
Сообщение от: want a million
опять не так. сейчас сформулирую....всё оставить как в оригинале,только добавить,что бы происходило открытие нового ордера при смене сигнала,не смотря на то,что там уже есть в рынке....сможете?
я все могу тут другой нюанс. критерии сигнала таковы что на свече А есть сигнал SELL, на счете B сигнала нет никакого а на свече C снова сигнал SELL, вопрос в том нужен ли вам этот "новый" SELL или вы ждете чередования: бай селл бай селл бай ....

я вам сразу 2 версии запилил чтобы не терять времени,
edit 2 - откроет второй селл по примеру выше
edit 3 - откроет второй селл только после сигнала BUY (чередование)
MAexpEA2_edit2.mq4
MAexpEA2_edit3.mq4
03.06.2015, 16:17
Аватар для fxpro 1
fxpro 1 fxpro 1 на форуме Прохожий
Регистрация: 09.04.2012 / Сообщений: 2
Поблагодарили 1 раз в 1 сообщении / Репутация: 2
чтобы что-то менять - нужен исходный код - mq4 файл.
если он у вас есть - отправьте, тогда посмотрим.
Мне жаль, но у меня нет mq4 файл.
03.06.2015, 16:22
Аватар для want a million
want a million want a million вне форума Местный житель
Регистрация: 29.03.2013 / Адрес: Калуга / Сообщений: 408
Поблагодарили 275 раз(а) / Репутация: 276
я все могу тут другой нюанс. критерии сигнала таковы что на свече А есть сигнал SELL, на счете B сигнала нет никакого а на свече C снова сигнал SELL, вопрос в том нужен ли вам этот "новый" SELL или вы ждете чередования: бай селл бай селл бай ....

я вам сразу 2 версии запилил чтобы не терять времени,
edit 2 - откроет второй селл по примеру выше
edit 3 - откроет второй селл только после сигнала BUY (чередование)
Вложение 208383
Вложение 208384
как же приятно иметь дело с грамотным прогером!!!! именно чередование я и имел в виду!!!! )))))) я к вам в скайп ща добавлюсь,примите данные. в скором будующем нужны будут услуги прогера....не безвозмездно,конечно)))))
03.06.2015, 16:39
Аватар для rafkhanov
rafkhanov rafkhanov вне форума Интересующийся
Регистрация: 26.04.2013 / Сообщений: 13
Поблагодарили 4 раз(а) / Репутация: 5
посмотрите мой пост #2989
03.06.2015, 17:50
Регистрация: 14.02.2009 / Сообщений: 1,473
Поблагодарили 4,118 раз(а) / Репутация: 4120


я все могу
Cэр, уважьте просьбу

- http://forexsystemsru.com/1007402-post2965.html

увеличьте в коде размер для картинки бОльшего размера

Последний раз редактировалось поручик; 03.06.2015 в 17:55.
03.06.2015, 18:55
Аватар для bornikol
bornikol bornikol на форуме Элитный участник
Регистрация: 29.05.2011 / Сообщений: 738
Поблагодарили 1,721 раз(а) / Репутация: 1761
MrGreen86 - большое человеческое спасибо за доделку индикатора DT-ZigZag-Lauer ! Все четко работает. Успехов во всем!!!
03.06.2015, 19:17
Аватар для Bseven77
Bseven77 Bseven77 вне форума Интересующийся
Регистрация: 09.05.2015 / Сообщений: 3
Поблагодарили 2 раз(а) / Репутация: 3

По умолчанию Помогите доработать советник

Ребята помогите пожалуйста доработать советник по риск менеджменту, чтобы он отключался в заданное время( затем включался на след день) и никак не влиял на открытые позиции и вновь открываемые.
Заранее благодарю!

Скрытый текст

extern double lossperc=10;
int prevVolume=0;
int dVolume=0;
bool is_new_bar=false;
double Daylim=0;
double Daycur=0;
double percent=0;
string tradeallowed;
double AvgLoss=0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+


int OrdersClose() {

int res=0;

for (int i=0; i<OrdersTotal(); i++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if (OrderType()==OP_BUY) { OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 30); res++; }
if (OrderType()==OP_SELL) { OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 30); res++; }
}

return (res);

}


double GetCumProf(string dat)
{
double TimeStart = StrToTime(dat+" 00:00");
double TimeEnd = StrToTime(dat+" 23:59");
double plus = 0;

for ( int i = 0; i<OrdersHistoryTotal(); i++ )
{
if ( OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) && (OrderType()==OP_SELL || OrderType()==OP_BUY) && (OrderCloseTime()>=TimeStart && OrderCloseTime()<=TimeEnd))
{
plus += OrderProfit() + OrderCommission() + OrderSwap();
}
}

for ( i = 0; i<OrdersTotal(); i++ )
{
if ( OrderSelect(i, SELECT_BY_POS, MODE_TRADES) && (OrderType()==OP_SELL || OrderType()==OP_BUY))
{
plus += OrderProfit() + OrderCommission() + OrderSwap();
}
}
return (plus);

}

double GetAvgLoss()
{




}

int SetPercent()
{
double tm = TimeCurrent();
int day = TimeDay(tm);
int month = TimeMonth(tm);
int year = TimeYear(tm);
double plus=0;

plus = GetCumProf(year+"."+month+"."+day);

Daycur = plus;
Daylim = NormalizeDouble(AccountBalance() * lossperc/100, 2);
double startbalance = AccountBalance() + plus;

percent = NormalizeDouble((plus / startbalance) *100, 2);


if (percent<=lossperc*(-1)) { tradeallowed = "Not Allowed!"; OrdersClose(); }
else tradeallowed = "Allowed";

return (0);
}


int init()
{
//---- indicators
//----

SetPercent();

return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----


if (Volume[0]!=prevVolume) {

dVolume=Volume[0]-prevVolume;

if (dVolume>0) is_new_bar=false;
if (dVolume<0) { is_new_bar=true; dVolume=Volume[0]; }

}
if (is_new_bar) {

}

SetPercent();
ScreenMsg();
//----
prevVolume = Volume[0];
return(0);
}
//+------------------------------------------------------------------+

void ScreenMsg() {
//+--------------------------------------------------------------------------------------------------------------+

Comment(""
+ "-------------------------------------------------------------"
+ "\n"
+ "Day Loss Limit: " + DoubleToString(Daylim, 2) + " ("+DoubleToStr(lossperc, 2)+"%)"
+ "\n"
+ "Day Cum Profit: " + DoubleToString(Daycur, 2) + " ("+DoubleToStr(percent, 2)+"%)"
+ "\n"
+ "Trade: " + tradeallowed
+ "\n"
+ "-------------------------------------------------------------");
[свернуть]

Последний раз редактировалось chocolate; 03.06.2015 в 19:49.
03.06.2015, 19:59
Аватар для Bseven77
Bseven77 Bseven77 вне форума Интересующийся
Регистрация: 09.05.2015 / Сообщений: 3
Поблагодарили 2 раз(а) / Репутация: 3
Ребята помогите пожалуйста доработать советник по риск менеджменту, чтобы он отключался в заданное время( затем включался на след день) и никак не влиял на открытые позиции и вновь открываемые.
Заранее благодарю!

Скрытый текст

extern double lossperc=10;
int prevVolume=0;
int dVolume=0;
bool is_new_bar=false;
double Daylim=0;
double Daycur=0;
double percent=0;
string tradeallowed;
double AvgLoss=0;

//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+


int OrdersClose() {

int res=0;

for (int i=0; i<OrdersTotal(); i++) {
OrderSelect(i, SELECT_BY_POS, MODE_TRADES);
if (OrderType()==OP_BUY) { OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_BID), 30); res++; }
if (OrderType()==OP_SELL) { OrderClose(OrderTicket(), OrderLots(), MarketInfo(OrderSymbol(), MODE_ASK), 30); res++; }
}

return (res);

}


double GetCumProf(string dat)
{
double TimeStart = StrToTime(dat+" 00:00");
double TimeEnd = StrToTime(dat+" 23:59");
double plus = 0;

for ( int i = 0; i<OrdersHistoryTotal(); i++ )
{
if ( OrderSelect(i, SELECT_BY_POS, MODE_HISTORY) && (OrderType()==OP_SELL || OrderType()==OP_BUY) && (OrderCloseTime()>=TimeStart && OrderCloseTime()<=TimeEnd))
{
plus += OrderProfit() + OrderCommission() + OrderSwap();
}
}

for ( i = 0; i<OrdersTotal(); i++ )
{
if ( OrderSelect(i, SELECT_BY_POS, MODE_TRADES) && (OrderType()==OP_SELL || OrderType()==OP_BUY))
{
plus += OrderProfit() + OrderCommission() + OrderSwap();
}
}
return (plus);

}

double GetAvgLoss()
{




}

int SetPercent()
{
double tm = TimeCurrent();
int day = TimeDay(tm);
int month = TimeMonth(tm);
int year = TimeYear(tm);
double plus=0;

plus = GetCumProf(year+"."+month+"."+day);

Daycur = plus;
Daylim = NormalizeDouble(AccountBalance() * lossperc/100, 2);
double startbalance = AccountBalance() + plus;

percent = NormalizeDouble((plus / startbalance) *100, 2);


if (percent<=lossperc*(-1)) { tradeallowed = "Not Allowed!"; OrdersClose(); }
else tradeallowed = "Allowed";

return (0);
}


int init()
{
//---- indicators
//----

SetPercent();

return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
//----
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int counted_bars=IndicatorCounted();
//----


if (Volume[0]!=prevVolume) {

dVolume=Volume[0]-prevVolume;

if (dVolume>0) is_new_bar=false;
if (dVolume<0) { is_new_bar=true; dVolume=Volume[0]; }

}
if (is_new_bar) {

}

SetPercent();
ScreenMsg();
//----
prevVolume = Volume[0];
return(0);
}
//+------------------------------------------------------------------+

void ScreenMsg() {
//+--------------------------------------------------------------------------------------------------------------+

Comment(""
+ "-------------------------------------------------------------"
+ "\n"
+ "Day Loss Limit: " + DoubleToString(Daylim, 2) + " ("+DoubleToStr(lossperc, 2)+"%)"
+ "\n"
+ "Day Cum Profit: " + DoubleToString(Daycur, 2) + " ("+DoubleToStr(percent, 2)+"%)"
+ "\n"
+ "Trade: " + tradeallowed
+ "\n"
+ "-------------------------------------------------------------");
[свернуть]

Во вложенном файле сам советник
03.06.2015, 20:52
Аватар для GenkaRak
GenkaRak GenkaRak на форуме Местный знаток
Регистрация: 07.10.2014 / Адрес: Russia / Сообщений: 531
Поблагодарили 505 раз(а) / Репутация: 506

Программы БОЛЬШАЯ просьба!!!

Доработайте пожалуйста индикатор, что бы показывал сумму профита по бай и селл.
Примерно, как на скрине.
В идеале, мне нужно только инфа: пары и сумма бай и селл.
Очень прошу!

Последний раз редактировалось GenkaRak; 06.06.2015 в 16:05.
04.06.2015, 05:02
Аватар для Капиталист
Капиталист Капиталист на форуме Активный участник
Регистрация: 30.04.2011 / Сообщений: 118
Поблагодарили 64 раз(а) / Репутация: 65
все несколько сложней. для нижней линии используются данные дня вроде как. а для верхней: если параметр Hours 3 или более - тайм фрейм 15, анализ ведется на 4*Hours свечах
если параметр Hours 2 или меньше - тайм фрейм 5, анализ ведется на 12*Hours свечах.

я все это дело ампутировал и вывел настройки тайм фрейма и количества анализируемых баров в настройки:
extern ENUM_TIMEFRAMES MyLowHigh_TimeFrame = PERIOD_M5;
extern int MyHighLow_Bars = 20;
Вложение 208375
Огромное вам спасибо за работу только вот вопрос,а настройки анализируемых баров. Т.е эти настройки баров какого ТФ?
Спасибо!
Ответить

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


Опции темы

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

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



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


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