[Архив!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 2. - страница 89

 
volshebnik:
Большое спасибо ! Заработало, правда редко, иногда всё же проскакивает эта же ошибка - 130....... ( А нормализовать стопы нужно всегда или только на индексах ? (просто на парах валют стопы всегда, по-моему, работали без нормализации).


Добавьте в код:

if ( Error!=0 )
  Print("OrderSend()  Error=",Error," ОткрФрвверх=",ОткрФрвверх," SL=",SL," TP=",TP);

и анализируйте.

 
artmedia70:

artemida70, у меня проблема с тестированием советника. Мне необходимо удалить старую историю, кот. находится в папке history в директории терминала. Я не знаю как войти в директорию терминала,перепробовал все иконки и нигде не нашел того, что ищу. Удалять исторические данные мне еще не приходилось. Вероятно в папке history лежат несколько файлов, если это так, то в каком из них находятся исторические данные? Не хочу дополнительных проблем. И еще, если Вас не затруднит, у меня комп. без стабилизатора и сегодня был сбой напряжения. Включаю терминал, а на экране исчезли статусная строка и панели инструментов. Я их включил, но ппосле выключения терминала они опять исчезли. Когда-то у меня уже было подобное и я в "Руководстве пользователя" нашел как это восстаовить, а сейчас влет не получается, опять надо все внимательно читать. Пожалуйста. :) 

 

coronel, artmedia70, спасибо Вам большое за ответы и дополнения.

У меня оказывается проблема не с кодом, а с чем-то другим (наверное уже с головой :-))). У меня ни один скрипт не работает, хотя работают любые эксперты. Я начал присоединять к графику все подряд скрипты, которые нашел в своем МТ4, и ни один не сработал - например скрипт close (copyright metaquotes), скрипт ByMarketBuySymbols (copyright KimIV), и др. Они все пишут в журнале loaded successfully, а потом сразу removed. Кнопка "Советники" включена. Терминал проверял не один, а два - Life и Fx4U. Не могут же они оба глючить. Что делать? Как заставить скрипты работать?

 

Перемещено из отдельной ветки.

anastar88 10.02.2011 13:28

Здравствуйте, в этом советнике алерты выскакивают каждые 5-10 сек., а мне надо только на торговых сигналах М30, которые обозначены зелеными и красными точками на графиках.Может кто-нибудь помочь? Спасибо.


//ADX Crossing.mq4 
//| Amir
//+------------------------------------------------------------------+
#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Lime
#property indicator_color2 Red
//---- input parameters
extern int ADXbars=14;
extern int CountBars=350;
//---- buffers
double val1[];
double val2[];
double b4plusdi,nowplusdi,b4minusdi,nowminusdi;
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
string short_name;
//---- indicator line
IndicatorBuffers(2);
SetIndexStyle(0,DRAW_ARROW);
SetIndexArrow(0,108);
SetIndexStyle(1,DRAW_ARROW);
SetIndexArrow(1,108);
SetIndexBuffer(0,val1);
SetIndexBuffer(1,val2);
//----
return(0);
}
//+------------------------------------------------------------------+
//| AltrTrend_Signal_v2_2 |
//+------------------------------------------------------------------+
int start()
{
if (CountBars>=Bars) CountBars=Bars;
SetIndexDrawBegin(0,Bars-CountBars);
SetIndexDrawBegin(1,Bars-CountBars);
int i,shift,counted_bars=IndicatorCounted();
//---- check for possible errors
if(counted_bars<0) return(-1);
//---- initial zero
if(counted_bars<1)
{
for(i=1;i<=CountBars;i++) val1[CountBars-i]=0.0;
for(i=1;i<=CountBars;i++) val2[CountBars-i]=0.0;
}
for (shift = CountBars; shift>=0; shift--)
{
b4plusdi=iADX(NULL,0,ADXbars,PRICE_CLOSE,MODE_PLUSDI,shift-1);
nowplusdi=iADX(NULL,0,ADXbars,PRICE_CLOSE,MODE_PLUSDI,shift);
b4minusdi=iADX(NULL,0,ADXbars,PRICE_CLOSE,MODE_MINUSDI,shift-1);
nowminusdi=iADX(NULL,0,ADXbars,PRICE_CLOSE,MODE_MINUSDI,shift);
if (b4plusdi>b4minusdi && nowplusdi<nowminusdi && i!=1)
{
val1[shift]=Low[shift]-5*Point;
Alert("Buy Arrow","\n","Current time is ",TimeToStr(CurTime()),"\n",Symbol());
i++;
}
if (b4plusdi<b4minusdi && nowplusdi>nowminusdi && i!=1)
{
val2[shift]=High[shift]+5*Point;
Alert("Sell Arrow","\n","Current time is ",TimeToStr(CurTime()),"\n",Symbol());
i++;
}
}
return(0);
}
//+------------------------------------------------------------------+




Прикрепленные файлы:

ADXpCrossingqw_Alerts.mq4 (2.47 KB)


 
Zhunko:

ХР? Если да, то подождите немного. Опубликую новый скоро.

На Висте и 7 работает. Не на всех ХР не работает. На некоторых всё в порядке.

================

Выложил. Завтра - послезавтра появится в копилке.


Да - XP.
 

Написал отличного робота-"эксперта" (иначе как в кавычках его не назовешь).

Учёл все последние разработки MQL-сообщества.

Классно открывает позиции на вход - заглядение - не к чему придраться ...

СтопЛоссы срабатывают безупречно!!! )))

Но ведь не хочет бабло нести хозяину...сука...)))

 
2011.02.10 13:10:54 ордер типе EURCHF,M1: Alert: Ошибка OrderClose4063
Чем бивает визвана такая ошибка,подскажите пажалуста?
 
в справку загляньте
 
Dimka-novitsek:

2011.02.10 13:10:54 ордер типе EURCHF,M1: Alert: Ошибка OrderClose4063
Чем бивает визвана такая ошибка,подскажите пажалуста?

Найдите место, откуда исходит эта ошибка, внимательно посмотрите. Должно быть число целое (целочисленное).

Возможно вы используете double или string... Это лишь как вариант. Может быть и что-то другое.

Ищите.

Код ошибки: " Ожидается параметр типа integer ".

 

Спасибо. А то то и оно,что сразу непонятно,

if (OrdersTotal( ) !=0) {
OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES );
OrderClose( ticket, Lots, Ask, 5, 0 );

А тикет у меня точно дубле,а не интегер!!!!

Причина обращения: