Input Parameters:
- OrderDistancePoints : Determines the distance in points from the current ask price for placing buy orders and from the bid price for placing sell orders.
- TPPoints : Specifies the take profit target in points.
- Startlotsize : Sets the initial lot size for trades.
- Gainperlot : Defines the desired gain per lot size.
The Code is full of comments, I’d recommend checking it out if you want to understand everything.Â
The following functions are important:Â
1 SetParameters:
- void SetParameters(double TargetProfit, double Startlot, double GainPerLot, double BuyLevel, double SellLevel);
- Sets various parameters for the trading strategy including target profit, starting lot size, gain per lot, buy level (price), and sell level (price).
2 TargetProfit:
- void TargetProfit(double value);
- double TargetProfit();
- Setter and getter methods for the target profit parameter. Allows setting and retrieving the target profit value for the trading strategy.
- void GainPerLot(double value);
- Setter method for specifying the gain per lot. Sets the amount of profit desired for each traded lot.
4 SqueezeDistance:
- void SqueezeDistance(double value);
- Sets the distance used for squeezing in the trading strategy. Determines how far away from the current price levels pending orders are placed.
5 SetHardSL:
- void SetHardSL(int points);
- Sets the hard stop loss for trades, specified in points. Establishes a fixed level at which a position will automatically be closed to limit potential losses.
6 LongVolume:
- double LongVolume();
- Retrieves the total volume of long positions currently open in the trading strategy.
7 ShortVolume:
- double ShortVolume();
- Retrieves the total volume of short positions currently open in the trading strategy.
8 LongPendingVol:
- double LongPendingVol();
- Retrieves the total volume of pending long orders that have not been executed yet.
9 ShortPendingVol:
- double ShortPendingVol();
- Retrieves the total volume of pending short orders that have not been executed yet.
10 TradeCount:
- uint TradeCount();
- Retrieves the total number of active trades and orders currently managed by the trading strategy.
11 Run:
- bool Run();
- Initiates the execution of the trading strategy. Returns true if the strategy starts successfully.
12 onTick:
- void onTick();
- Function to be called within the OnTick() function of the Expert Advisor (EA). Handles logic and actions based on current market conditions and updates.
13 BuildFromTheInside:
- void BuildFromTheInside(double Vol, double BuyPrice, double SellPrice);
- Initiates the creation of new trading positions ( Vol ) within the specified buy and sell price levels ( BuyPrice , SellPrice ) to capitalize on market movements.
14 Stop:
- void Stop();
- Stops ( m_IsRunning ) the execution of the trading strategy. Ceases further trading actions until restarted.
15 Running:
- bool Running();
- Checks if the trading strategy is currently running ( m_IsRunning ). Returns true if the strategy is actively executing trades.
16 LastLongPrice:
- double LastLongPrice();
- Retrieves the price at which the last long position or order ( m_LastLongTicket ) was initiated. Returns 0 if no such information is available.
17 LastShortPrice:
- double LastShortPrice();
- Retrieves the price at which the last short position or order ( m_LastShortTicket ) was initiated. Returns 0 if no such information is available.
18 AddTicket:
- bool AddTicket(ulong Ticket);Â
- Adds a trading ticket ( Ticket ) to the batch of orders managed by the trading strategy. Returns true if the ticket is successfully added.