Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 621

 
YuraZ:



Спасибо!!!!!!!!!!!!

Если не сочтёте за наглость.....:)) подскажите, как правильно запустить Тестер. Так как я пытаюсь, не получается.

#import  "shell32.dll"
    int ShellExecuteA(int hwnd,string Operation,string File,string Parameters,string Directory,int ShowCmd); 
#import

int Start;

int start()
   {
    //---------------------------------- Запустим Тестер -------------------------
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", FileOptim, PuthTester_h, 3);
    //Start   = ShellExecuteA(0, "Open", "terminal.exe", "optimise.ini", "D:\Alpari_Terminal_Tester\tester", 3);

    return(0);
   }
 
Leo59:

Спасибо!!!!!!!!!!!!

Если не сочтёте за наглость.....:)) подскажите, как правильно запустить Тестер. Так как я пытаюсь, не получается.

Самооптимизацию  решили сделать! ? кулл... это тема прикольная 

 есть 2 способа мне больше нравится 1-й

1) запускать оптимизацию из самого эксперта на этом же терминале

2) настроить отдельный терминал или терминалы - стартовать их затем по окончании читать результаты оптимизации


вы походу пробуете 2-й способ - он более громоздкий


для  начала замените

ShellExecuteA  на ShellExecuteW
 
YuraZ:

Самооптимизацию  решили сделать! ? кулл... это тема прикольная 

 есть 2 способа мне больше нравится 1-й

1) запускать оптимизацию из самого эксперта на этом же терминале

2) настроить отдельный терминал или терминалы - стартовать их затем по окончании читать результаты оптимизации


вы походу пробуете 2-й способ - он более громоздкий


для  начала замените



Спасибо!!!!!!!!
Вы, правы:)) В конечном счёте - самооптимизация.


1) запускать оптимизацию из самого эксперта на этом же терминале

Делаю на основе результатов текущей виртуальной торговли

2) настроить отдельный терминал или терминалы - стартовать их затем по окончании читать результаты оптимизации

Осенью копался в auto_optimization XEONа. TestCommander - коммерческий "чёрный ящик". Решил сделать сам, чтобы как-то реализовать функционал, который не получается в варианте 1).

 
pu6ka:

  Киньте этот индикатор на М1, с появлением новых баров, слева линии аллигатора "затираются". Такое нужно?

  
  

Решил задачу. 

#property copyright "forexman77@list.ru"
#property link      "forexman77@list.ru"
#property indicator_separate_window
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
//--- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
extern int p  =10;
double val_plus[];
double val_minus[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE);
   SetIndexBuffer(0,ExtMapBuffer1);
   SetIndexStyle(1,DRAW_LINE);
   SetIndexBuffer(1,ExtMapBuffer2);
   IndicatorDigits(Digits+1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),                      
    limit;
    double
    indicator_plus,indicator_minus;
   if(counted_bars>0)
      counted_bars--;
   limit=Bars-counted_bars;
   for(int i=0;i<limit;i++)
   { 
     indicator_plus=0;
     indicator_minus=0;
     ArrayInitialize(val_plus,0);
     ArrayInitialize(val_minus,0);
   for(int k=p;k>=0;k--)
     {
     ArrayResize(val_plus,p);
     ArrayResize(val_minus,p);
     if(iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k)>iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k+1))val_plus[k]=1;
     if(iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k+1)>iMA(NULL,PERIOD_CURRENT,21,0,MODE_EMA,PRICE_CLOSE,i+k))val_minus[k]=1;

     if (val_plus[k] > 0){indicator_plus=indicator_plus+val_plus[k];}
     if (val_minus[k] > 0){indicator_minus=indicator_minus+val_minus[k];}
     }
          ExtMapBuffer1[i]=indicator_plus;
          ExtMapBuffer2[i]=indicator_minus;
   }

   return(0);
  }
 
Написать простенький код скрипта, который копирует файл из одного места в другой, кто-нибудь может?

Или, который запустит Тестер в другом терминале?

Вот, я, пока не могу. А Вы?

 
Leo59:
Написать простенький код скрипта, который копирует файл из одного места в другой, кто-нибудь может?

Или, который запустит Тестер в другом терминале?

Вот, я, пока не могу. А Вы?


И я не могу, так как ещё не нужно! Что нужно, приучаюсь делать сам, чтобы не менять мою логику!

Тем более, что сделал сам, если нужно что-то подправить, без проблем!

Учите с азов "матчасть", с подсказками-подарками не научитесь и в конечном счёте больше времени угробите понапрасну!

Успехов! :)

 
borilunad:


И я не могу, так как ещё не нужно! Что нужно, приучаюсь делать сам, чтобы не менять мою логику!

Тем более, что сделал сам, если нужно что-то подправить, без проблем!

Учите с азов "матчасть", с подсказками-подарками не научитесь и в конечном счёте больше времени угробите понапрасну!

Успехов! :)

Вы правы, "на чужой каравай - рот не разевай".

Восхитительный город Барселона! Одни только трамвайные пути, проложенные среди зелёных стриженых газонов, чего только стоят! Только вот, бабы там, в Испании, низкосракие и толстожёпые, не то что наши Питерские.
:)) Какой только бред с бодуна не напишешь. Это я про себя.

Всё "пучком", и Вам успехов тоже, впрочем как и всем, тоже!

 
Leo59:

Вы правы, "на чужой каравай - рот не разевай".

Восхитительный город Барселона! Одни только трамвайные пути, проложенные среди зелёных стриженых газонов, чего только стоят! Только вот, бабы там, в Испании, низкосракие и толстожёпые, не то что наши Питерские.
:)) Какой только бред с бодуна не напишешь. Это я про себя.

Всё "пучком", и Вам успехов тоже, впрочем как и всем, тоже!


Я вам не о "каравае", а о более продуктивном методе изучения, чтобы "не было мучительно больно за бесцельно потраченные годы"!

Впрочем, каждому своё! :(

 
artmedia70:

Может так попробовать:

Ввёл в передаваемые переменные символ и магик. У вас же нет на них проверки.




Спасибо! Попробую в понедельник. Хотя все таки для меня не ясен вопрос. Если я хочу закрыть любой ордер почему выдается ошибка? Кстати надо будет попробовать этот же код в старом тестере. В новом тестере много изменений по мелочам. Я в нем  не всегда уверен, что получится в итоге.
 
001:


Спасибо! Попробую в понедельник. Хотя все таки для меня не ясен вопрос. Если я хочу закрыть любой ордер почему выдается ошибка? Кстати надо будет попробовать этот же код в старом тестере. В новом тестере много изменений по мелочам. Я в нем  не всегда уверен, что получится в итоге.

Я чё-та уже не помню... Если нужно все Sell закрыть, то возврат из функции делать не нужно. Там я накосячил спросонья. Вот так для закрытия всех:

//+------------------------------------------------------------------+
void CheckForLongetivityClose_Sell(int symbol, int magic) {
   if(DayOfWeek()==0 || DayOfWeek()==6) return;
   for(int i=OrdersTotal()-1; i>=0; i--) {
      if(OrderSelect(i,SELECT_BY_POS)) {
         if(OrderMagicNumber()!=magic) continue;
         if(OrderSymbol()!=symbol)     continue;
         if(OrderType()!=OP_SELL)      continue;
         datetime openTime_S= OrderOpenTime();
         int timeDistance_S = TimeCurrent()-openTime_S;
         if(timeDistance_S>60*BarrierMinute_S) {
            bool res=OrderClose(OrderTicket(),OrderLots(),Ask,3,clrRed);
            }
         }
      }
}
//+------------------------------------------------------------------+

А вообще конечно вместо этой строки

bool res=OrderClose(OrderTicket(),OrderLots(),Ask,3,clrRed);

нужно вызывать нормальную функцию закрытия позиций, в которой есть обработка кодов возврата сервера.

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