I will write you an advisor for free - page 11

 
Septimus7:

Good afternoon Andrew. I am writing to you about writing an Indicator. I propose to create a HIGHLY REVERSE indicator without re-rating! (Screenshot with example attached).

I have a FORMULA and TECHNOLOGY OF OPTIMIZATION in the form of clear ToR.


A variation of ADX. From the screenshot(looks like May 2015) see what was there before the screenshot segment and after the screenshot segment, open D1.

 
Andrey Luxe:
Looking for a partner trader to create a free joint robot.
Hello. I propose to automate the following strategy - Martin on the trend with locking. after AO crosses the zero line upwards we open buy trades with tp x pips. When moving upwards and closing at tp we open a new trade with the same lot. When prices move in the opposite direction we open positions every y pips with an increased lot by z. Once AO crosses the zero line downwards we set the lot equal to all buy positions and open a sell order immediately. On a downward price movement the transaction is closed by TP and a new one is opened with the same lot; on an upward price movement we open positions with double lot every y-points. When On the crossing of zero line by AO we place a lot on all sell positions and simultaneously close a lot on buy positions. buy positions are closed by setting the ndp to breakeven between the locked position and the series of buy positions, so that when the ndp is closed, the profit will compensate for the loss on the locked position (if it is in deficit). If themaximumnumber of trades isopened with a doubled lot or in case a drawdown is exceeded, the lock on a series of losing trades should be set without waiting for the zero line crossing by AO. When the trend changes and AO crosses the zero line in the opposite direction the locking order is closed and the maximal drawdown threshold is increased by a certain percentage. You should also provide work on small timeframe (5 min), and the trend is defined by AO on a big one (60 min).
 
Andrey Luxe:
Looking for a partner trader to create a free trading robot together.
here's an idea, ***
 
mvatura #:
I have an idea, ***.

If you have an idea, post it here. You always have the option of creating a paid job with Freelance.

Торговые приложения для MetaTrader 5 на заказ
Торговые приложения для MetaTrader 5 на заказ
  • 2021.11.17
  • www.mql5.com
Самый большой фриланс c разработчиками программ на MQL5
 
Urman Ru #:

Can I put a file here with a simple working indicator and some ideas on how to improve it? I can't get freelancing up yet.

That's what this forum is for. Describe the idea and maybe there will be someone who will write it for free and share it here.
 
Are there any experts in the Pine language? I need to recompile an indicator from PINE into MQL5 and make an Expert Advisor based on it
 
Andrey Luxe:
Looking for a partner trader to create a free joint robot.

For the zigzag, write an advisor

 
Evgeny Belyaev #:
Email me. The ToS is at:https: //docs.google.com/document/d/15Qnx2wCs7NfN-1YmbboWmcHbq1OB2u6XdnIG3za88VU/edit?usp=sharing

I need help to start writing an advisor

 
50270694 #:

I need help to start writing an EA

The terminal has two EAs for example(MACD Sample andMoving Average).

I changed indicators in them, just poking until I got some results. When I got bored I gave up and started all over again.

\\\\\\\\\\\\\\\\\\\\\\\

1. To start with, create an Expert under any name and copy it from the ready-made one into your created one.

Screenshot 2021-12-04 085509

Screenshot 2021-12-04 085801

 
SanAlex #:

The terminal has two example EAs(MACD Sample andMoving Average).

I would change indicators in them, until I got some result. When I got bored I gave up and started all over again.

\\\\\\\\\\\\\\\\\\\\\\\

1. The first step is to create an expert under any name and copy it from the ready-made to your created one.

So I groped my way to this combination (where yellow - where I screwed around)

//+------------------------------------------------------------------+
//|                                                 XXX 50270694.mq4 |
//|                        Copyright 2021, MetaQuotes Software Corp. |
//|                                             https://www.mql5.com |
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//|                                                  MACD Sample.mq4 |
//|                   Copyright 2005-2014, MetaQuotes Software Corp. |
//|                                              http://www.mql4.com |
//+------------------------------------------------------------------+
#property copyright   "2005-2014, MetaQuotes Software Corp."
#property link        "http://www.mql4.com"

input double TakeProfit    =50;
input double Lots          =0.1;
input double TrailingStop  =30;
//+------------------------------------------------------------------+
//|                                                                  |
//+------------------------------------------------------------------+
void OnTick(void)
  {
   double MacdCurrent;
   int    cnt,ticket,total;
//---
// initial data checks
// it is important to make sure that the expert works with a normal
// chart and the user did not make any mistakes setting external
// variables (Lots, StopLoss, TakeProfit,
// TrailingStop) in our case, we check TakeProfit
// on a chart of less than 100 bars
//---
   if(Bars<100)
     {
      Print("bars less than 100");
      return;
     }
   if(TakeProfit<10)
     {
      Print("TakeProfit less than 10");
      return;
     }
//--- to simplify the coding and speed up access data are put into internal variables
   MacdCurrent=iCustom(NULL,0,"ZigZag", 12, 5, 3,0);
   total=OrdersTotal();
   if(total<1)
     {
      //--- no opened orders identified
      if(AccountFreeMargin()<(1000*Lots))
        {
         Print("We have no money. Free Margin = ",AccountFreeMargin());
         return;
        }
      //--- check for long position (BUY) possibility
      if(MacdCurrent<MacdCurrent+1)
        {
         ticket=OrderSend(Symbol(),OP_BUY,Lots,Ask,3,0,Ask+TakeProfit*Point,"macd sample",16384,0,Green);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
               Print("BUY order opened : ",OrderOpenPrice());
           }
         else
            Print("Error opening BUY order : ",GetLastError());
         return;
        }
      //--- check for short position (SELL) possibility
      if(MacdCurrent>MacdCurrent+1)
        {
         ticket=OrderSend(Symbol(),OP_SELL,Lots,Bid,3,0,Bid-TakeProfit*Point,"macd sample",16384,0,Red);
         if(ticket>0)
           {
            if(OrderSelect(ticket,SELECT_BY_TICKET,MODE_TRADES))
               Print("SELL order opened : ",OrderOpenPrice());
           }
         else
            Print("Error opening SELL order : ",GetLastError());
        }
      //--- exit from the "no opened orders" block
      return;
     }
//--- it is important to enter the market correctly, but it is more important to exit it correctly...
   for(cnt=0; cnt<total; cnt++)
     {
      if(!OrderSelect(cnt,SELECT_BY_POS,MODE_TRADES))
         continue;
      if(OrderType()<=OP_SELL &&   // check for opened position
         OrderSymbol()==Symbol())  // check for symbol
        {
         //--- long position is opened
         if(OrderType()==OP_BUY)
           {
            //--- should it be closed?
            if(MacdCurrent>MacdCurrent+1)
              {
               //--- close order and exit
               if(!OrderClose(OrderTicket(),OrderLots(),Bid,3,Violet))
                  Print("OrderClose error ",GetLastError());
               return;
              }
            //--- check for trailing stop
            if(TrailingStop>0)
              {
               if(Bid-OrderOpenPrice()>Point*TrailingStop)
                 {
                  if(OrderStopLoss()<Bid-Point*TrailingStop)
                    {
                     //--- modify order and exit
                     if(!OrderModify(OrderTicket(),OrderOpenPrice(),Bid-Point*TrailingStop,OrderTakeProfit(),0,Green))
                        Print("OrderModify error ",GetLastError());
                     return;
                    }
                 }
              }
           }
         else // go to short position
           {
            //--- should it be closed?
            if(MacdCurrent<MacdCurrent+1)
              {
               //--- close order and exit
               if(!OrderClose(OrderTicket(),OrderLots(),Ask,3,Violet))
                  Print("OrderClose error ",GetLastError());
               return;
              }
            //--- check for trailing stop
            if(TrailingStop>0)
              {
               if((OrderOpenPrice()-Ask)>(Point*TrailingStop))
                 {
                  if((OrderStopLoss()>(Ask+Point*TrailingStop)) || (OrderStopLoss()==0))
                    {
                     //--- modify order and exit
                     if(!OrderModify(OrderTicket(),OrderOpenPrice(),Ask+Point*TrailingStop,OrderTakeProfit(),0,Red))
                        Print("OrderModify error ",GetLastError());
                     return;
                    }
                 }
              }
           }
        }
     }
//---
  }
//+------------------------------------------------------------------+

\\\\\\\\\\\\\\\\\\\\\

here is the result

Screenshot 2021-12-04 091855

Reason: