Советник Шаман V.3

none
  • Размер: 178,1 Кб
  • Добавил: kvashnin007
  • Просмотров: 744
  • Загрузок: 19
  • Добавлено: 27 мая 2024
  • Обновлено: 27 мая 2024


Чем больше усовершенствуешь, тем хуже (кажется) работает советник. Что-то непонятное с расчетом лотов в разных режимах.?????????

Скриншоты

  • none




    Скачать (178,1 Кб)

    Рейтинг: из 5 (голосов )

    Комментарии (24)

    +
    0
    Сова торгует но с ошибкой:
    невозможно открыть файл MQL4\indicators\KVN_KAE_ U_Dif3.ex4'
    может новый билд 1420 отразился на сове?
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 27 мая 2024, 15:34
    +
    0
    А сам индикатор в терминале есть? Открывается?.. Надо поместить его в папку Indicators. Правой кнопкой — изменить и, когда он откроется в редакторе, компилировать.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 1 июня 2024, 11:43
    +
    0
    Удалил… без комментариев.
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 31 мая 2024, 20:29
    +
    0
    Этот советник не для работы. Он для проработки идеи. Я написал такой. Можно другую стратегию юзать.
    Повторюсь: идея советника состоит в том, чтобы по любой стратегии открывать сделки только в направлении общего БУ, таким образом постоянно подтягивая его к цене. Это можно тупо делать и по времени. Например каждые 20 секунд. Всегда наступит такой момент, когда цена встретится с БУ + MinTP. Закрылись и заново в поход за счастьем. Все сопутствующие недоразумения типа просадки, прибыли, времени..., завися только от ваших стратегии и ММ.

    Удачи.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 1 июня 2024, 11:52
    +
    0
    О. спасибо. ветка жива.
    То что это не для работы ясно… Я сам удивился… индикатор устанавливается все ОК.
    Дело не в стратегии и не в идеи. Сова индикатор игнорирует… вот в чем вопрос!
    Написать можно все что угодно_но ошибки надо исправлять(я только об этом)
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 1 июня 2024, 17:35
    +
    0
    Не знаю в чем дело. У меня работает. Обновленный Альпари. ????
    Может попробовать завести-скопировать индикатор через «Открыть каталог данных» терминала.
    Ошибки надо исправлять. Но у меня такой ошибки нет. Есть другая: не открывает покупки. Никак. Вроде все по феншую, а… Не смог найти причину. Легче переписать. А времени не хватает. А помощи извне не дождёшься.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 1 июня 2024, 21:17
    +
    0
    ну давай тогда так: скинь сет eur/usd на твое усмотрение (у меня настройки по умолчанию) но проблема не в этом
    сова постоянно обращается к индикатору значит она его видит… и как не странно она торгует (открывает ордера как в тестере(мт4 от Alpari) так и робофорекс) но проблема на лицо
    2024.06.02 09:41:02.428 2023.06.02 03:22:23 cannot open file \MQL4\indicators\KVN_KAE_U_Dif3.ex4' [2]

    Мне жалко сову… у меня Тестер Tickstory Lite годовые кодировки… даже с этой ошибкой сова пытается выйти в плюс. Значит идея и стратегия на пол пути к какому либо результату. Может заменить индикатор на аналогичный стратегии и идеи? Как я понял он авторский а это уже чревато (я имею ввиду больше ошибок) я не программист а тоб помог. Шаману светлая память… почему я зацепился: нельзя от Шамана продукт делать с ошибками.
    Это не упрек. Давайте как и он делать все хорошо.
    P.S.у Шамана тоже не сразу все получалось… дорогу осилит идущий.

    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 2 июня 2024, 11:29
    +
    0
    Ну давай тогда так.

    Советник не совсем Шамановский. Там сборник всячины. Просто мое развитие по моим видениям. Многое не относится к идее Шамана.

    Я вычистил сову от всяких приблуд, некоторые из которых к тому же не корректно работали. Убрал индикатор, который у тебя не пашет. Сделал простенький запуск сделок. Оставил сеточник, который работает только на усреднение. Слегка разнообразил порядок расчета лотов. И все.

    Давай начнем с чистого листа. Вначале почти голая идея. Проверяем, изучаем и продумываем извращения. Обкатываем. Что-то оставляем, что-то — в сад. Может родим титана. Хотя я увлекаюсь больше математикой.

    Великий соблазн перейти на открытие сделок по ценам закрытия свеч. Тестирование будет что ценам открытия, что по тикам одинаковым. Быстрым. М1 или М5. А может М15. Потом попробовать открытие через Х секунд. Шире диапазон, но дольше подгонка. Потом, по результатам наблюдений, можно индикаторы и ММ потрусить.

    
    //+------------------------------------------------------------------+
    //|                                              SHAMAN cleaning.mq4 |
    //-------------------------------------------------------------------+
    #property version     "1.0" //3/06/2024
    #property strict
    //---
    input bool            Agressor            = false;     // Agressor - функция влияет только на расчет ордеров и работает всегда.
    input int             CountAverage        = 2;         // Count Average - к-во ордеров при котором начинается усреднение.
    input int             MinimalProfit       = 41;        // Minimal profit for close Average orders (in pips)
    //---      
    input double          Risk                = 4.1;       // Риск на сделку в процентах от свободной маржи. Ели "0", то StartLot
    input double          StartLot            = 0.06;      // Start lot
    input double          CoeffLots           = 1.6;       // Coeff. Lots - коэффициент мартингейла
    input double          MaximalLots         = 2.56;      // Maximal Lot 
    //--
    input int             PointOrderStep      = 63;        // Point order step (in pips)
    input int             TakeProfit          = 273;       // Take Profit (in pips)
    //---      
    input ENUM_TIMEFRAMES TF                  = PERIOD_M5; // Тайм Фрейм для ATR
    input ENUM_TIMEFRAMES TF_ATR              = PERIOD_M30;// Тайм Фрейм для расчета входа
    input int             Per_MA              = 23;
    input int             LevelSell           = 48;
    input int             LevelBuy            = 67;
    //---
    input int             MagicNumber         = 1961;      // Magic Number 
    input int             Slippage            = 30;        // Slippage (in pips)
    //---
    double SellBuff;
    double BuyBuff;
    double ShortSig;
    double LongSig;
    double op,lt,tp;
    int    tk,b,s;
    int    iB=1;
    double BuyPriceMax=0,BuyPriceMin=0,BuyPriceMaxLot=0,BuyPriceMinLot=0,
           SelPriceMin=0,SelPriceMax=0,SelPriceMinLot=0,SelPriceMaxLot=0;
    double FullBU,BuyBU,SelBU,StartLots;
    //************************************************************************************************/
    int OnInit()
    {
         Comment("");
      return(INIT_SUCCEEDED);
    }
    //************************************************************************************************/
    void OnTick()
    {
    /*   if(IsDemo() == false)// советник работает только на демо счете
          {
          Alert("Реальный счет... советник не работает");
          return;
          }   
       if(TimeCurrent() > StrToTime("2022.9.29 17:35"))  // ограничение роботы советника по времени
          {
          Alert("Срок роботы советника истек... советник не работает");
          return;
          }   
    */    
       BuyPriceMax=0;BuyPriceMin=0;BuyPriceMaxLot=0;BuyPriceMinLot=0;
       SelPriceMin=0;SelPriceMax=0;SelPriceMinLot=0;SelPriceMaxLot=0;
    
       int
       BuyPriceMaxTic=0,BuyPriceMinTic=0,SelPriceMaxTic=0,SelPriceMinTic=0;
       
       double
       BuyLotsSum=0,SelLotsSum=0,WeighBuy=0, WeighSell=0;
    
       op=0;lt=0;tp=0;
       BuyBU=0;SelBU=0;FullBU=0;
       tk=0;b=0;s=0;
    
       for(int i=OrdersTotal()-1;i>=0;i--)
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
             if(OrderMagicNumber()==MagicNumber)
                if(OrderSymbol()==Symbol())
                  {
                   op=NormalizeDouble(OrderOpenPrice(),Digits());
                   lt=NormalizeDouble(OrderLots(),2);
                   tk=OrderTicket();
                   if(OrderType()==OP_BUY)
                     {
                      b++;
                      BuyLotsSum += lt;
                      WeighBuy   += lt*op;
                      
                      if(op>BuyPriceMax || BuyPriceMax==0)
                        {
                         BuyPriceMax    = op;
                         BuyPriceMaxLot = lt;
                         BuyPriceMaxTic = tk;
                        }
                      if(op<BuyPriceMin || BuyPriceMin==0)
                        {
                         BuyPriceMin    = op;
                         BuyPriceMinLot = lt;
                         BuyPriceMinTic = tk;
                        }
                     }
                   // ===
                   if(OrderType()==OP_SELL)
                     {
                      s++;
                      SelLotsSum += lt;
                      WeighSell  += lt*op;
                      
                      if(op>SelPriceMax || SelPriceMax==0)
                        {
                         SelPriceMax    = op;
                         SelPriceMaxLot = lt;
                         SelPriceMaxTic = tk;
                        }
                      if(op<SelPriceMin || SelPriceMin==0)
                        {
                         SelPriceMin    = op;
                         SelPriceMinLot = lt;
                         SelPriceMinTic = tk;
                        }
                     }
                  }
                  //---
                  if (BuyLotsSum != 0) 
                     BuyBU = WeighBuy / BuyLotsSum;
                     
                  if (SelLotsSum != 0) 
                     SelBU = WeighSell / SelLotsSum;
                     
                  if (BuyLotsSum - SelLotsSum != 0) 
                     FullBU = (WeighBuy - WeighSell)/(BuyLotsSum - SelLotsSum);
                     
    
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 2 июня 2024, 21:50
    +
    0
    2024.06.02 09:41:02.428 2023.06.02 03:22:23 cannot open file \MQL4\indicators\KVN_KAE_U_Dif3.ex4' [2]


    В коде в самом начале заменить название индикатора с KVN_KAE_U_Dif3 на_KAE_KVN_U_Dif3.
    avatar

    [ 14 ] OSS5Зарегистрирован: 30 мая 2021 | Сообщений: 149

    • 3 июня 2024, 01:35
    +
    0
    о
    ОГО!!!
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 3 июня 2024, 07:05
    +
    0
    Вторая часть SHAMAN cleaning.mq4 для склейки:

    //*************************************************************//
       double   AwerageBuyPrice=0,AwerageSelPrice=0;
       
       if(b>=CountAverage) AwerageBuyPrice=NormalizeDouble
             ((BuyPriceMax*BuyPriceMaxLot+BuyPriceMin*BuyPriceMinLot)/(BuyPriceMaxLot+BuyPriceMinLot)+MinimalProfit*Point(),Digits());
       //----
       if(s>=CountAverage) AwerageSelPrice=NormalizeDouble
             ((SelPriceMax*SelPriceMaxLot+SelPriceMin*SelPriceMinLot)/(SelPriceMaxLot+SelPriceMinLot)-MinimalProfit*Point(),Digits());
    //*************************************************************//
       double BuyLot=0,SelLot=0;
       
       StartLots = StartLot;
       
       if(Risk>0)
          StartLots = AccountFreeMargin()/100*Risk/MarketInfo(Symbol(), MODE_MARGINREQUIRED);
       
       if(!Agressor)    
          {   
          if(BuyPriceMinLot==0) BuyLot=StartLots; else BuyLot=MathCeil(SelLotsSum * 2 - BuyLotsSum);
          if(SelPriceMaxLot==0) SelLot=StartLots; else SelLot=MathCeil(BuyLotsSum * 2 - SelLotsSum);
          }
       else            
          {   
          if(BuyPriceMinLot==0) SelLot=StartLots; else SelLot=MathCeil(BuyPriceMinLot * 100 * CoeffLots)/100;
          if(SelPriceMaxLot==0) BuyLot=StartLots; else BuyLot=MathCeil(SelPriceMaxLot * 100 * CoeffLots)/100;
          }
       //---
       BuyLot = NL(BuyLot);  SelLot = NL(SelLot);
    //*************************************************************//
    
       if(BuyLot>MaximalLots)      BuyLot=MaximalLots;
       if(SelLot>MaximalLots)      SelLot=MaximalLots;
       
       BuyLot = NL(BuyLot);   SelLot = NL(SelLot); // Нормализовали
       
       if(!ValidLot(BuyLot) || !ValidLot(SelLot))  // Проверили на валидность
          return;   
    //*************************************************************//
       if(Agressor)
         {
         if((b==0 && Signal()==OP_BUY) || (b>0 && Ask<=BuyPriceMin-PointOrderStep*Point() && Ask<FullBU))
            if(OrderSend(Symbol(),OP_BUY,BuyLot,NormalizeDouble(Ask,Digits()),Slippage,0,0," ",MagicNumber,0,clrBlue)<0)
               Print("OrderSend error #",GetLastError());
       
         if((s==0 && Signal()==OP_SELL) || (s>0 && Bid>=SelPriceMax+PointOrderStep*Point() && Bid>FullBU))
            if(OrderSend(Symbol(),OP_SELL,SelLot,NormalizeDouble(Bid,Digits()),Slippage,0,0," ",MagicNumber,0,clrRed)<0)
               Print("OrderSend error #",GetLastError());
         }
       else
         {
         if(Signal()==OP_BUY && Ask<FullBU)
            if((b==0) || (b>0 && Ask<=BuyPriceMin-PointOrderStep*Point()))
               if(OrderSend(Symbol(),OP_BUY,BuyLot,NormalizeDouble(Ask,Digits()),Slippage,0,0," ",MagicNumber,0,clrBlue)<0)
                  Print("OrderSend error #",GetLastError());
       
         if(Signal()==OP_SELL && Bid>FullBU)
            if((s==0) || (s>0 && Bid>=SelPriceMax+PointOrderStep*Point()))
               if(OrderSend(Symbol(),OP_SELL,SelLot,NormalizeDouble(Bid,Digits()),Slippage,0,0," ",MagicNumber,0,clrRed)<0)
                  Print("OrderSend error #",GetLastError());
         }
    //*************************************************************//
       for(int i=OrdersTotal()-1;i>=0;i--)
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
             if(OrderMagicNumber()==MagicNumber)
                if(OrderSymbol()==Symbol())
                  {
                   op=NormalizeDouble(OrderOpenPrice(),Digits());
                   tp=NormalizeDouble(OrderTakeProfit(),Digits());
                   lt=NormalizeDouble(OrderLots(),2);
                   tk=OrderTicket();
    
                   if(OrderType()==OP_BUY && b==1 && tp==0)
                      if(!OrderModify(tk,op,OrderStopLoss(),NormalizeDouble(Ask+TakeProfit*Point(),Digits()),0,clrNONE))
                         Print("OrderModify error #",GetLastError());
    
                   if(OrderType()==OP_BUY && b>=CountAverage)
                     {
                      if(tk==BuyPriceMaxTic || tk==BuyPriceMinTic)
                         if(Bid<AwerageBuyPrice && tp!=AwerageBuyPrice)
                            if(!OrderModify(tk,op,OrderStopLoss(),AwerageBuyPrice,0,clrNONE))
                               Print("OrderModify error #",GetLastError());
    
                      if(tk!=BuyPriceMaxTic && tk!=BuyPriceMinTic && tp!=0)
                         if(!OrderModify(tk,op,0,0,0,clrNONE))
                            Print("OrderModify error #",GetLastError());
                     }
                     
                   if(OrderType()==OP_SELL && s==1 && tp==0)
                      if(!OrderModify(tk,op,OrderStopLoss(),NormalizeDouble(Bid-TakeProfit*Point(),Digits()),0,clrNONE))
                         Print("OrderModify error #",GetLastError());
    
                   if(OrderType()==OP_SELL && s>=CountAverage)
                     {
                      if(tk==SelPriceMaxTic || tk==SelPriceMinTic)
                         if(Ask>AwerageSelPrice && tp!=AwerageSelPrice)
                            if(!OrderModify(tk,op,OrderStopLoss(),AwerageSelPrice,0,clrNONE))
                               Print("OrderModify error #",GetLastError());
    
                      if(tk!=SelPriceMaxTic && tk!=SelPriceMinTic && tp!=0)
                         if(!OrderModify(tk,op,0,0,0,clrNONE))
                            Print("OrderModify error #",GetLastError());
                     }
                  }
    }
    //************************************************************************************************/
    bool ValidLot(double volume)
    {
          //--- минимально допустимый объем для торговых операций
          double min_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MIN);
          if(volume<min_volume)
             return(false);
       
          //--- максимально допустимый объем для торговых операций
          double max_volume=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_MAX);
          if(volume>max_volume)
             return(false);
       
          //--- получим минимальную градацию объема
          double volume_step=SymbolInfoDouble(Symbol(),SYMBOL_VOLUME_STEP);
       
          int ratio=(int)MathRound(volume/volume_step);
          if(MathAbs(ratio*volume_step-volume)>0.0000001)
             return(false);
    
       return(true);
    }
    //************************************************************************************************/
    /*СИГНАЛ*/
    //------------------------------------------------------------------	
    int Signal()                   // Создаем функцию получения сигнала на указанном ТФ и баре
    {
    
            double current_openprice = iOpen (Symbol(),TF , iB);
            double Mashka = iMA(NULL,0,Per_MA,0,0,4,iB) ;
            double Atrium = 0.2 * iATR(NULL,TF_ATR,Per_MA,iB);
             
         if(Agressor)
            {
            if (Atrium!=0)
               {
               SellBuff = 3.0 * (High[iB]  - Mashka) / Atrium;
               BuyBuff  = 3.0 * (Mashka - Low[iB]) / Atrium;
               }
            if (SellBuff >  LevelSell) 
               return OP_SELL;
              
            if (BuyBuff < -LevelBuy) 
               return OP_BUY;
            }
         else
            {
            if(Bid>=current_openprice)                                               
               {
               SellBuff = (68000000.0 * (Bid - Mashka) * Atrium);
               BuyBuff  = (68000000.0 * (Mashka - Low[iB]) * Atrium);
               }
            if(Bid<current_openprice)
               {
               SellBuff = (68000000.0 * (High[iB]  - Mashka) * Atrium);
               BuyBuff  = (68000000.0 * (Mashka - Bid) * Atrium);
               }
            if (SellBuff >  LevelSell) 
               return OP_SELL;
              
            if (BuyBuff < -LevelBuy) 
               return OP_BUY;
            }
    	return -1;                   // Иначе нет сигнала. Возвращаем в int Signai () -1 (никаких сигналов)
    }
    
    
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 2 июня 2024, 21:59
    +
    0
    Третья часть SHAMAN cleaning.mq4 для склейки: Почему-то не влезло.

    //************************************************************************************************
    double GetProfit()
    {  
       double Profit=0;
         
       for(int i=OrdersTotal()-1;i>=0;i--)
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
             if(OrderMagicNumber()==MagicNumber)
                if(OrderSymbol()==Symbol())
                  Profit += OrderProfit() + OrderCommission() + OrderSwap();
       return (Profit);
    }
    //************************************************************************************************
    bool CloseAll()
    { 
       for(int i=OrdersTotal()-1;i>=0;i--)
          if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
             if(OrderMagicNumber()==MagicNumber)
                if(OrderSymbol()==Symbol())
                  {
                  if(OrderType()==OP_BUY)
                    if(!OrderClose(OrderTicket(),OrderLots(),Bid,Slippage))
                      Sleep(500);
                  if(OrderType()==OP_SELL)
                    if(!OrderClose(OrderTicket(),OrderLots(),Ask,Slippage))
                      Sleep(500);
                  }
       return true;
    }
    //************************************************************************************************
    double NTP(int dir, double oop) // Нормализация цены тейкпрофита
    {
    	if (TakeProfit==0) return 0;
    	double StopLvl=MarketInfo(Symbol(), MODE_STOPLEVEL)*Point;
    	double pr=NP((dir==OP_BUY)?Bid:Ask);
    	if (dir==OP_BUY)  { double _tp=oop+TakeProfit*Point; return NP(MathMax(_tp, pr+StopLvl)); }
    	if (dir==OP_SELL) { double _tp=oop-TakeProfit*Point; return NP(MathMin(_tp, pr-StopLvl)); }
    	return 0;
    }
    //************************************************************************************************
    double NP(double d) 
    {
           double TickSize=MarketInfo(Symbol(), MODE_TICKSIZE); 
           
           if (TickSize==0) 
             TickSize=1; 
        return ND(MathRound(d/TickSize)*TickSize); 
    }
    //************************************************************************************************
    double ND(double d, int n=-1) 
    { 
          if (n<0) 
             return NormalizeDouble(d, Digits); 
        return NormalizeDouble(d, n); 
    }
    //************************************************************************************************
    double NL(double lot) // нормализация лота
    {
    	double LotStep=MarketInfo(Symbol(), MODE_LOTSTEP);
    	int k=0;
    	if (LotStep<=0.001) k=3; else if (LotStep<=0.01) k=2; else if (LotStep<=0.1) k=1; // шаг лота
    
    	double MinLot=MarketInfo(Symbol(), MODE_MINLOT);
    	double MaxLot=MarketInfo(Symbol(), MODE_MAXLOT);
    	return ND(MathMin(MaxLot, MathMax(MinLot, lot)), k); // венули нормализованный лот
    }
    //************************************************************************************************
    
    
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 2 июня 2024, 22:01
    +
    0
    ну давай тогда так. перезалей советник без ошибок.
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 3 июня 2024, 17:05
    +
    0
    вердикт: ни какие Вам советники не помогут.
    есть шальные деньги играйтесь в Forex.
    Тема закрыта.
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 3 июня 2024, 17:41
    +
    0
    Умерла, так умерла. Закрывать, аль нет? Позже решу.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 4 июня 2024, 00:03
    +
    0
    Ты дай, а я посмотрю. Ошибки? Журнал в студию. У меня ошибки не показывает. Хотя баги попадаются. Искать откуда? А зачем? У меня другие занятия поинтереснее есть.

    Всем удачи.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 4 июня 2024, 00:06
    +
    0
    Я не буду тут читать лекции.
    Ferex это программа по отбору средств
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 6 июня 2024, 12:40
    +
    0
    Кем? И у кого? Каждый сам выбирает по какую сторону баррикад становиться.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 6 июня 2024, 18:15
    +
    0
    И это не тот топик. Тот, что интересен был и есть по ссылке kvashnin007.opentraders.ru/74118.html.
    Правильно называется: попробуй отними. Завяла тема без поддержки.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 6 июня 2024, 18:59
    +
    0
    P.S. пока на свете живы дураки (это я про себя)
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 6 июня 2024, 14:53
    +
    0
    Буратино, хоть и дурак, а… Не совсем. истинный дурак себя таковым не считает.
    так что не все потеряно. Меня моя блонда дурачком иногда называет. Ласково так. Дурачок ты мой.
    Как истинная блондинка.
    avatar

    [ 7 ] kvashnin007Зарегистрирован: 15 августа 2012 | Сообщений: 598 - Андрей

    • 6 июня 2024, 18:53
    +
    0
    Горе от Ума… ну это ни в какие ворота не влазит!
    Какая глупость! напишу советник и будет мне счастье.(как от блондинки)
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 7 июня 2024, 14:39
    +
    0
    P.S.Рыба не первой свежести (дальше продолжать не буду… гороху надо наесться)
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 7 июня 2024, 14:54
    +
    0
    Правь советник, я тестирую.
    avatar

    [ 10 ] waterfallЗарегистрирован: 21 апреля 2017 | Сообщений: 80

    • 7 июня 2024, 15:03

    Зарегистрируйтесь или авторизуйтесь, чтобы оставить комментарий
    Чтобы написать отзыв или скачать файл, необходимо быть зарегистрированным пользователем. Если Вы уже регистрировались ранее, войдите под своим именем. Если Вы еще не регистрировались, то, пожалуйста, зарегистрируйтесь. Регистрация не займет много времени.

    Справка: зарегистрированные пользователи могут добавлять и скачивать файлы, вести собственный блог, комментировать записи, обмениваться личными сообщениями с другими участниками и др.