Tarea técnica


double CalculateProfitOneLot(double entry_price,double exit_price) { double profit=0; if(!OrderCalcProfit(ORDER_TYPE_BUY,Symbol(),1.0,entry_price,exit_price,profit)) { Print(__FUNCTION__," Failed to calculate OrderCalcProfit(). Error ",GetLastError()); } return(profit); }

#define EXPERT_MAGIC 123456  // MagicNumber of the expert
//+------------------------------------------------------------------+
//| Modification of pending orders                                   |
//+------------------------------------------------------------------+
void OnStart()
  {
//--- declare and initialize the trade request and result of trade request
   MqlTradeRequest request={0};
   MqlTradeResult  result={0};
   int total=OrdersTotal(); // total number of placed pending orders
//--- iterate over all placed pending orders
   for(int i=0; i<total; i++)
     {
      //--- parameters of the order
      ulong  order_ticket=OrderGetTicket(i);                             // order ticket
      string order_symbol=Symbol();                                      // symbol
      int    digits=(int)SymbolInfoInteger(order_symbol,SYMBOL_DIGITS);  // number of decimal places
      ulong  magic=OrderGetInteger(ORDER_MAGIC);                         // MagicNumber of the order
      double volume=OrderGetDouble(ORDER_VOLUME_CURRENT);                // current volume of the order
      double sl=OrderGetDouble(ORDER_SL);                                // current Stop Loss of the order
      double tp=OrderGetDouble(ORDER_TP);                                // current Take Profit of the order
      ENUM_ORDER_TYPE type=(ENUM_ORDER_TYPE)OrderGetInteger(ORDER_TYPE); // type of the order
      int offset = 50;                                                   // offset from the current price to place the order, in points
      double price;                                                      // order triggering price
      double point=SymbolInfoDouble(order_symbol,SYMBOL_POINT);          // value of point
      //--- output information about the order
      PrintFormat("#%I64u %s  %s  %.2f  %s  sl: %s  tp: %s  [%I64d]",
                  order_ticket,
                  order_symbol,
                  EnumToString(type),
                  volume,
                  DoubleToString(PositionGetDouble(POSITION_PRICE_OPEN),digits),
                  DoubleToString(sl,digits),
                  DoubleToString(tp,digits),
                  magic);
      //--- if the MagicNumber matches, Stop Loss and Take Profit are not defined
      if(magic==EXPERT_MAGIC && sl==0 && tp==0)
        {
         request.action=TRADE_ACTION_MODIFY;                           // type of trade operation
         request.order = OrderGetTicket(i);                            // order ticket
         request.symbol   =Symbol();                                   // symbol
         request.deviation=5;                                          // allowed deviation from the price
        //--- setting the price level, Take Profit and Stop Loss of the order depending on its type
         if(type==ORDER_TYPE_BUY_LIMIT)
           {
            price = SymbolInfoDouble(Symbol(),SYMBOL_ASK)-offset*point; 
            request.tp = NormalizeDouble(price+offset*point,digits);
            request.sl = NormalizeDouble(price-offset*point,digits);
            request.price    =NormalizeDouble(price,digits);                // normalized opening price
           }
         else if(type==ORDER_TYPE_SELL_LIMIT)
           {
           price = SymbolInfoDouble(Symbol(),SYMBOL_BID)+offset*point; 
            request.tp = NormalizeDouble(price-offset*point,digits);
            request.sl = NormalizeDouble(price+offset*point,digits);
            request.price    =NormalizeDouble(price,digits);                 // normalized opening price
           }
         else if(type==ORDER_TYPE_BUY_STOP)
           {
           price = SymbolInfoDouble(Symbol(),SYMBOL_BID)+offset*point; 
            request.tp = NormalizeDouble(price+offset*point,digits);
            request.sl = NormalizeDouble(price-offset*point,digits);
            request.price    =NormalizeDouble(price,digits);                 // normalized opening price
           }
         else if(type==ORDER_TYPE_SELL_STOP)
           {
           price = SymbolInfoDouble(Symbol(),SYMBOL_ASK)-offset*point; 
            request.tp = NormalizeDouble(price-offset*point,digits);
            request.sl = NormalizeDouble(price+offset*point,digits);
            request.price    =NormalizeDouble(price,digits);                 // normalized opening price
           }
         //--- send the request
         if(!OrderSend(request,result))
            PrintFormat("OrderSend error %d",GetLastError());  // if unable to send the request, output the error code
         //--- information about the operation   
         PrintFormat("retcode=%u  deal=%I64u  order=%I64u",result.retcode,result.deal,result.order);
         //--- zeroing the request and result values
         ZeroMemory(request);
         ZeroMemory(result);
        }
     }
  }
//+------------------------------------------------------------------+

Han respondido

1
Desarrollador 1
Evaluación
(12)
Proyectos
12
25%
Arbitraje
1
0% / 100%
Caducado
0
Libre
2
Desarrollador 2
Evaluación
(41)
Proyectos
46
28%
Arbitraje
9
0% / 100%
Caducado
7
15%
Libre
3
Desarrollador 3
Evaluación
(246)
Proyectos
455
26%
Arbitraje
134
21% / 58%
Caducado
99
22%
Libre
4
Desarrollador 4
Evaluación
(1)
Proyectos
1
100%
Arbitraje
0
Caducado
0
Libre
5
Desarrollador 5
Evaluación
(437)
Proyectos
464
69%
Arbitraje
6
67% / 0%
Caducado
2
0%
Trabaja
6
Desarrollador 6
Evaluación
(34)
Proyectos
35
66%
Arbitraje
0
Caducado
0
Libre
7
Desarrollador 7
Evaluación
Proyectos
0
0%
Arbitraje
0
Caducado
0
Libre
8
Desarrollador 8
Evaluación
(3)
Proyectos
3
67%
Arbitraje
1
0% / 0%
Caducado
0
Libre
9
Desarrollador 9
Evaluación
(574)
Proyectos
945
47%
Arbitraje
303
59% / 25%
Caducado
125
13%
Libre
10
Desarrollador 10
Evaluación
(69)
Proyectos
146
34%
Arbitraje
11
9% / 55%
Caducado
26
18%
Libre
Ha publicado: 6 ejemplos
Solicitudes similares
When you scroll down, you’ll see the box for requirements. Here’s a structure you can copy-paste and edit: Project Description I need a trading robot (Expert Advisor) for MetaTrader 5 (MQL5). The EA should execute trades automatically based on predefined strategy rules. Trading Strategy Rules Entry: [Explain your entry condition, e.g., “Buy when 50 EMA crosses above 200 EMA”] Exit: [Explain exit condition, e.g
Hi i wanted to see what you will charge me to make a simple indicator in TOS which i can plot on my activity and positions section. Firstly I want a custom column where we can calculate the difference between the trade price and the current price of a stock, or future or option. so we we have the value in that column. Example NVDA - Trade price 140 - Mark is 190 so this new colum will show +50 and option we bought at
Hello, I am looking for an experienced QuantConnect/Lean developer for a trading strategy project on futures (Micro Nasdaq – MNQ) with Interactive Brokers integration (paper + live). The strategy includes several key features: • Multi-timeframe analysis (signal validation across multiple horizons) • Integration of economic news/events into the trading logic • Advanced risk management (daily stop, position sizing
Dear all, I have Ctrader Bot that runs correctly per one asset per day. I would like to change the settings so that the bot can be run on multiple assets on the same platform at the same day. For example, the current situation is that there will be one trade set up on GE30 in the morning, the bot will execute those trades correctly. Then I would like to run the bot on US30 later that day, in order to do that I have
Please translate the FX Blue copy trading EA into Chinese EA. Additionally, the software must centrally manage newly installed and uninstalled MT4/MT5 platform directories to uniformly manage the association between multi-terminal login trading accounts and copy trading accounts. Existing program solutions are preferred; candidates with relevant project development experience will be given priority consideration
Bainanans 500+ USD
Bainanan good f المؤشر. ينبغي إضافة نقطة صفراء عند أعلى نقطة في الشموع في منطقة ذروة الشراء - وهي نقطة H. ينبغي إضافة نقطة خضراء عند النقطة المنخفضة للشموع في منطقة ذروة البيع - وهي نقطة L. إذا وُجدت نقطة L واحدة على الأقل بين نقطتي H، فابحث عن نقطة LL في الفترة الفاصلة بينهما. ستكون الشمعة ذات أدنى سعر قاع هي نقطة LL. بشكل عام، لا تُعتبر نقطة LL بالضرورة نقطة L. ابحث عن الشموع ذات أدنى سعر قاع. إذا كانت هناك نقطة H
Døsh forex 30 - 200 USD
I want a robot that will help me and trade the the robot will be very good I don’t want to loose money I repeat I don’t want to loose money
We are looking for an experienced MT5/MQL5 developer to build a data bridge that connects an external market data feed (tick-by-tick from a third-party provider) into the MT5 platform. Requirements: Capture real-time tick-by-tick market data (bid/ask/last price, volume) from an external API (source: WebSocket/REST or DLL). Push this data into MT5 in a format compatible with native charts and order execution
Precision Shift EA 100 - 500 USD
Use the Daily (D1) chart as the higher timeframe reference. On the H1 timeframe, monitor for a sweep of the previous day’s high or low. A sweep means that price takes liquidity above or below the previous day’s level and then shifts back inside. After a sweep on H1, drop to the M5 timeframe. On M5, wait for a Change of State in Delivery / Market Structure Shift (CHOCH/BOS) to confirm entry. If the sweep occurs above
Develop a fully automated Expert Advisor (EA) compatible with MetaTrader 5 (MT5) platform. The EA should assist traders in successfully navigating and passing proprietary trading firm challenges (e.g., FTMO) by employing advanced risk management and hedging strategy. Core Functionalities 1. Dual-Account Hedging Mechanism Functionality: Implement a system where the EA places buy orders on the prop (challenge) account

Información sobre el proyecto

Presupuesto
30 - 200 USD
Para el ejecutor
27 - 180 USD
Plazo límite de ejecución
a 10 día(s)