0
советник по ссылке писался под свои цели и задачи. опишите полностью, то что вам нужно, т.е. тз целиком
avatar

AM2

  • 27 июня 2021, 06:49
0
ссылку на исходник дайте
avatar

AM2

  • 27 июня 2021, 06:40
0
здесь еще нужно согласовывать тз. пока все размыто
avatar

AM2

  • 26 июня 2021, 18:59
0
в базе есть советник FurSеtka. не подойдет?
avatar

AM2

  • 26 июня 2021, 16:57
0
индикатор просит еще пару индикаторов:

2021.06.26 16:54:24.315 2020.04.13 08:00:00 cannot open file 'C:\Users\MetaQuotes\Terminal\MQL4\indicators\Rsi TMA centered bands Alert.ex4'
[2]
2021.06.26 16:54:24.309 2020.04.13 08:00:00 cannot open file 'C:\Users\MetaQuotes\Terminal\MQL4\indicators\èíäèêàòîð âîëàòèëüíîñòè.ex4' [2]

avatar

AM2

  • 26 июня 2021, 15:57
0
индикатор ломаный и к тому же подвесил терминал. сделал вслепую, но так я не уверен что попаду в сигнал.


//+------------------------------------------------------------------+
//|                                                     Binarik9.mq4 |
//|                                              Copyright 2020, AM2 |
//|                                      http://www.forexsystems.biz |
//+------------------------------------------------------------------+
#property copyright "Copyright 2020, AM2"
#property link      "http://www.forexsystems.biz"
#property version   "1.00"
#property strict

//--- Inputs
extern double Lots       = 0.1;        // лот
extern double KLot       = 2;          // увеличение лота
extern double MaxLot     = 5;          // максимальный лот
extern int StopLoss      = 0;          // лось
extern int TakeProfit    = 0;          // язь
extern int Slip          = 3;          // реквот
extern int Shift         = 1;          // бар индикатора
extern int Magic         = 123;        // магик

extern int Reverse       = 0;          // 1-реверс

extern string IndName    =  "Impuls_induk_0_2";
extern string Expiration = "15";       // истечение

//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   Comment("");
//---
   return(INIT_SUCCEEDED);
  }
//+------------------------------------------------------------------+
//| Expert deinitialization function                                 |
//+------------------------------------------------------------------+
void OnDeinit(const int reason)
  {
   Comment("");
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void PutOrder(int type,double price)
  {
   int r=0;
   color clr=Green;
   double sl=0,tp=0;

   if(type==1 || type==3 || type==5)
     {
      clr=Red;
      if(StopLoss>0)
         sl=NormalizeDouble(price+StopLoss*_Point,_Digits);
      if(TakeProfit>0)
         tp=NormalizeDouble(price-TakeProfit*_Point,_Digits);
     }

   if(type==0 || type==2 || type==4)
     {
      clr=Blue;
      if(StopLoss>0)
         sl=NormalizeDouble(price-StopLoss*_Point,_Digits);
      if(TakeProfit>0)
         tp=NormalizeDouble(price+TakeProfit*_Point,_Digits);
     }

   r=OrderSend(NULL,type,Lot(),NormalizeDouble(price,Digits),Slip,sl,tp,Expiration,Magic,0,clr);
   return;
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int CountTrades()
  {
   int count=0;
   for(int i=OrdersTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_TRADES))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()<2)
               count++;
           }
        }
     }
   return(count);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
int Loss()
  {
   int loss=0;
   for(int i=OrdersHistoryTotal()-1; i>=0; i--)
     {
      if(OrderSelect(i,SELECT_BY_POS,MODE_HISTORY))
        {
         if(OrderSymbol()==Symbol() && OrderMagicNumber()==Magic)
           {
            if(OrderType()==0)
              {
               if(OrderClosePrice()-OrderOpenPrice()<0)
                  loss++;
               if(OrderClosePrice()-OrderOpenPrice()>0)
                  break;
              }
            if(OrderType()==1)
              {
               if(OrderClosePrice()-OrderOpenPrice()>0)
                  loss++;
               if(OrderClosePrice()-OrderOpenPrice()<0)
                  break;
              }
           }
        }
     }
   return(loss);
  }
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
double Lot()
  {
   double lot=NormalizeDouble(Lots*MathPow(KLot,Loss()),2);
   if(lot>MaxLot)
      lot=Lots;
   return(lot);
  }
//+------------------------------------------------------------------+
//| Expert tick function                                             |
//+------------------------------------------------------------------+
void OnTick()
  {
   double up=iCustom(NULL,0,IndName,0,Shift);
   double dn=iCustom(NULL,0,IndName,1,Shift);

   bool buy=up!=EMPTY_VALUE;
   bool sell=dn!=EMPTY_VALUE;

   if(Reverse>0)
     {
      buy=dn!=EMPTY_VALUE;
      sell=up!=EMPTY_VALUE;
     }

   if(CountTrades()<1)
     {
      if(buy)
        {
         PutOrder(0,Ask);
        }
      if(sell)
        {
         PutOrder(1,Bid);
        }
     }

   Comment("\n Lot: ",Lot(),
           "\n Up: ",up,
           "\n Dn: ",dn);
  }
//+------------------------------------------------------------------+

avatar

AM2

  • 26 июня 2021, 15:44
0
Не могли бы вы

мог бы, но со скринами
avatar

AM2

  • 26 июня 2021, 15:21
0
А как у вас ищут поручителей?
Мне нужно что-то сделать, чтобы найти его?


попросить кого то с уровнем 3 и выше поручиться. сделать это можно в чате или написав в личку.
avatar

AM2

  • 26 июня 2021, 08:08
0
опишите стратегию, найдите поручителя и напишу советник с нуля
avatar

AM2

  • 25 июня 2021, 23:05
0
на 29-е
avatar

AM2

  • 25 июня 2021, 22:46
0
на 28-е
avatar

AM2

  • 25 июня 2021, 22:45
0
в советнике по ссылке идет выставление отложки постоянным лотом. вот код установки ордера:


extern double Lots       = 0.1;      // лот
...
r=OrderSend(NULL,type,Lots,NormalizeDouble(price,Digits),Slip,sl,tp,"",Magic1,0,clr);
avatar

AM2

  • 24 июня 2021, 19:11
0
с индикатором все в порядке:

avatar

AM2

  • 24 июня 2021, 18:26
0
1. В настройках советника отсутствуют настройки стоп-лосса и трала. По умолчанию стоп сам устанавливается на конечный профит противоположного стоп-ордера, который находится далеко. А это приводит к накоплению незакрытых ордеров и отсутствию конечной прибыли.По плану хотел его устанавливать на уровень противоположного стоп-ордера вручную, так как автоматическая установка предполагалась на следующую доработку в июле.
2.Советник не работает в тестере на нефтепродуктах, металлах и акциях, которые и являлись основной целью его применения (открытие фондового рынка происходит в 16:30/17:30 по мск).
3.При установке советника в текущее время на график валюты он ничего не выставляет, ждет начала дня. А в это время я обычно сплю. Когда же ему начать работу? Только в 16:30/17:30 на акциях я могу это наблюдать.

все эти моменты нужно прописывать в тз
avatar

AM2

  • 24 июня 2021, 17:51
0
я когда гонял на истории было не больше 2-3 сделки в день, поэтому не добавлял эту функцию. сейчас добавлю если есть необходимость
avatar

AM2

  • 23 июня 2021, 21:29