игрушки - страница 5

 
f.t.:

странные рефлексии бывают у людей.... новой возможности тестирования экспертов - не радуемся. новой возможности товарищу быть забаненным - радуемся.... :((


Это нервное.

Кстати о товарищах, точнее о господах. Сегодня в супермаркете слышал объявление: "Уважаемые дамы и господа! Новый магазин сэконд-хенд ждёт вас... "

---

Про Сталина - это анекдот, а вот попробуйте на работе скажите коллегам: "Вы знаете, что для вступления в ку-клукс-клан претендент был обязан убить 1-го негра и 1-ну кошку!"

 
Я как пионер выскажу свое мнение.. Тестером пользуюсь для подбора оптимальных параметров.. далее полученные результаты гоняю в визуальном режиме и проверяю корректность отработки торговых условий. Я доверяю тестеру..
 
Vinin:

Есть кое-что

если чесно, вы меня сильно удивили, и что в этом советнике не так? почему он только для теста?
 
seolink74:
далее полученные результаты гоняю в визуальном режиме и проверяю корректность отработки торговых условий. Я доверяю тестеру..
:))) если доверяете, то зачем же потом в визуальном режиме проверяете?
 
f.t.:
:))) если доверяете, то зачем же потом в визуальном режиме проверяете?
Не жульничай! Все знают, что ты способен заговорить до смерти :))
А с seolink74 я согласен. Если мы имеем то, что имеем, значит надо тестировать по ценам открытия и обязательно смотреть в визуале. Иногда открываются интересные вещи, после которых плюнешь и выкинешь сразу любой результат. График баланса обманчив.
 
granit77:
Не жульничай! Все знают, что ты способен заговорить до смерти :))

Сели заяц, волк, лиса и медведь в карты играть.

Медведь и говорит:

- если кто-нибудь будет мухлевать, то получит по наглой рыжей морде.

 
wenay:

если чесно, вы меня сильно удивили, и что в этом советнике не так? почему он только для теста?


Возьмем вот эту функцию, хотя можно было и другую

void cl() 
   {
   ////maks pip
   // на входных параметраз иедт cl_prc1 - процент закрытия сделки за шаг
   double procent=(1-(cl_prc1*0.01)); // Определяем какой обьем должен остаться после 1-го закрытия
   double cl_prc=cl_prc1*0.01;  // Переводим процент закрытия в значение дабл
   for (int i=0; i<=OrdersTotal(); i++)//Основной перебор ордеров
       {
       if (OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
          {
          double pip=0.0;
         // double pip=OrderProfit()/(OrderLots()*8)*5; //Определяем ратояние 
         //Определяем ратояние 
          if (OrderType()==0)   {pip=(Ask-OrderOpenPrice())*(1/Point);}
          if (OrderType()==1)   {pip=(OrderOpenPrice()-Bid)*(1/Point);}
          
          if (bool_stop) if (pip<stop*(-1)) {
             if (OrderType()==OP_BUY)  OrderClose(OrderTicket(),OrderLots(),Bid,0,Gold);
             if (OrderType()==OP_SELL) OrderClose(OrderTicket(),OrderLots(),Ask,0,Gold);} //врезка.. закрытие по определенному убытку
          
          if (bool_nul_stop) if (pip>nul_stop) if (OrderStopLoss()!=OrderOpenPrice()) {OrderModify(OrderTicket(), OrderOpenPrice(), OrderOpenPrice(), 0, 0, Blue);} //врезка..  постановка безубытка
          
          
          double x1=0;
          if (bool_steps_closing)//основной код функции частичного закрытие от определенного обьема лота
             for (int c=7; c>=1; c--)
              {
              if (pip>cl_pip*c) //Сверяем  растояние
                 {
                 if (OrderLots()>lot*MathPow(procent,c)) //Сверяем лота
                    {
                    x1=NormalizeDouble(OrderLots()*cl_prc,2);
                    if (x1<0.02 || c==7) x1=OrderLots(); 
                    if (OrderType()==OP_BUY)  OrderClose(OrderTicket(),x1,Bid,0,Gold);
                    if (OrderType()==OP_SELL) OrderClose(OrderTicket(),x1,Ask,0,Gold);
                    }
                 }
              }
          }
       }
   }

1. Цикл перебора ордеров сделан не корректно

2. Нет контроля инструмента

3. Нет контроля Магика

Вывод: можно ставить не более одного советника на терминал, иначе советники будут между собой конфликтовать и посыплются ошибки . А значит корректная работа возможна только в тестере

 
а, ну да))
 
granit77:
Не жульничай!

вопрос был задан строго "по программистки" (если... то... иначе....)

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

если вы доверяете тестеру, это значит что получив устраивающие вас результаты в тестере вы сразуже ставите экспа с такимиже параметрами на реал. "иначе" .... какое нафик доверие?! ;)

поэтому - не стоит лукавить с терминами. называйте вещи своими именами ( доверяю = потом не проверяю, потом проверяю = не доверяю )

так же как вы пишите программы: если назвали переменную trust и написали гдето maybe = trust, а потом Comment(maybe); то вы понимаете, что видите значение maybe но не trust. просто при некоторых условиях они содержат одно и тоже значение.

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