Profit factor:
14.95

System Overview

This automated trading script is designed to execute trades based on a multi-layered analysis of market trends, specifically inspired by the "Triple Screen" trading philosophy. Instead of making impulsive decisions, the logic filters market signals through several layers of confirmation—analyzing broader trends before identifying specific entry points.

Core Trading Logic

1. Trend Identification (The Filters) The system looks at three primary indicators to determine the overall "mood" of the market:

  • Moving Average Convergence Divergence (MACD): Used to identify the general momentum and direction of the price.
  • Oscillating Moving Averages: These help confirm whether the current trend is strengthening or weakening.
  • Williams %R: This serves as a momentum oscillator to identify if the market is currently "overbought" (too high) or "oversold" (too low).

2. Entry Strategy The script does not enter trades immediately. It waits for a specific alignment of conditions:

  • Buy Signal: Triggered when the long-term trend indicators are moving upward and the Williams %R shows that the market is in a favorable buying zone.
  • Sell Signal: Triggered when the long-term trend indicators are moving downward and the Williams %R shows the market is in a favorable selling zone.

When these conditions are met, the script places "Pending Orders." This means it sets an instruction to buy or sell at a specific price level in the future (such as just above the previous day's high for a buy), rather than executing instantly at the current market price.

3. Order Management and Dynamic Adjustments The script actively manages open orders to ensure they remain relevant to changing market conditions:

  • Order Deletion: If the trend direction flips unexpectedly (e.g., moving averages shift downward while a "Buy" order is still pending), the script will automatically cancel the outdated order to prevent entering a losing trade.
  • Price Adjustment: The script constantly monitors the price of the previous day's high and low. If it determines that the required entry point is too close to the current market price, it will adjust the pending order to maintain a safe "buffer" distance.

4. Risk Management (Trailing Stops) To protect profits while allowing for potential gains, the script employs a Trailing Stop mechanism. Once a trade moves into a profitable position:

  • The system automatically "slides" the stop-loss price along with the market movement.
  • As the price moves in favor of the trade, the stop-loss follows at a fixed distance. This ensures that if the market suddenly reverses, the profit already gained is locked in.

5. Automated Lot Sizing Depending on your configuration, the script can automatically calculate how much money to risk per trade based on your total account balance. This helps ensure that the size of each trade is proportionate to the amount of capital available in the account.

Price Data Components
Series array that contains the highest prices of each barSeries array that contains the highest prices of each barSeries array that contains the lowest prices of each barSeries array that contains the lowest prices of each barSeries array that contains open time of each bar
Orders Execution
Checks for the total of open ordersIt can change open orders parameters, due to possible stepping strategyIt automatically opens orders when conditions are reached
Indicators Used
MACD HistogramMoving Average of OscillatorForce indexLarry William percent range indicator
13 Views
0 Downloads
0 Favorites
TSD-TR_0.2
/*-----------------------------+
|			       |
| Shared by www.Aptrafx.com    |
|			       |
+------------------------------*/

/*[[
	Name := TSD
	Author := Copyright © 2005 Bob O'Brien / Barcode, MT4 code by Jesse Breaker, modified by TR
	Link := 
	Notes := Based on Alexander Elder's Triple Screen system. To be run on ANY chart timeframe, but assumes that each daily bar starts at 00:00.
	Lots := 1
	Stop Loss := 0
	Take Profit := 100
	Trailing Stop := 60
]]*/
//+------------------------------------------------------------------+
//|  External Variables                                              |
//+------------------------------------------------------------------+

extern double LotsIfNoMM = 1.0;
extern int TakeProfit = 100;
extern int Stoploss = 0;
extern int TrailingStop = 60;	
extern int Slippage=5;			// Slippage
extern int MM_Mode=0,MM_Risk=20;

int cnt=0,total=0;

double MacdCurrent=0, MacdPrevious=0, MacdPrevious2=0, Direction=0, OsMAPrevious=0, OsMAPrevious2=0, OsMADirection=0;

double newbar=999,LastLogTime=0,PrevDay=0,PrevMonth=0,PrevYear=0,PrevCurtime=0;

double PriceOpen=0,Lots;								// Price Open


bool First=True,OperationSuccess;

double TradesThisSymbol=0;
double WilliamsBuy=0, WilliamsSell=0, ForcePos=0, ForceNeg=0, Force=0,NewPrice=0;
double StartMinute1=0,EndMinute1=0,StartMinute2=0,EndMinute2=0,StartMinute3=0,EndMinute3=0;
double StartMinute4=0,EndMinute4=0,StartMinute5=0,EndMinute5=0,StartMinute6=0,EndMinute6=0;
double StartMinute7=0,EndMinute7=0,DummyField=0;

int start()
{

if (! IsTesting()) 
Comment("TSD for MT4 ver beta 0.3 - DO NOT USE WITH REAL MONEY YET",
        "\n",
        "\n","Weekly MacdPrevious = ",MacdPrevious,"    Weekly OsMAPrevious = ",OsMAPrevious,
        "\n","Weekly MacdPrevious2 = ",MacdPrevious2,"    Weekly OsMAPrevious2 = ",OsMAPrevious2,
        "\n","Weekly Direction = ",Direction,"    Weekly OsMADirection = ",OsMADirection,
        "\n",
        "\n","Is Daily Williams Bullish = ",WilliamsBuy,
        "\n","Is Daily Williams Bearish = ",WilliamsSell,
        "\n",
        "\n","Total Orders = ",total,
        "\n","Trades this Symbol(",Symbol(),") = ",TradesThisSymbol,
        "\n",
        "\n","New Bar Time is ",TimeToStr(newbar),
        "\n",
        "\n","Daily High[1] = ",iHigh(Symbol(),PERIOD_D1, 1),
        "\n","Daily High[2] = ",iHigh(Symbol(),PERIOD_D1, 2),
        "\n","Daily Low[1] = ",iLow(Symbol(),PERIOD_D1, 1),
        "\n","Daily Low[2] = ",iLow(Symbol(),PERIOD_D1, 2),
        "\n",
        "\n","Current Ask Price + 16 pips = ",Ask+(16*Point),
        "\n","Current Bid Price - 16 pips = ",Bid-(16*Point));
        
        
        
   if (MM_Mode < 0)  {
   Lots = MathCeil(AccountBalance()*MM_Risk/10000)/10;
     if (Lots > 100) {  
     Lots = 100;  
     }
   } else {
   Lots = LotsIfNoMM;
   }
   if (MM_Mode > 0)  
    {
   Lots = MathCeil(AccountBalance()*MM_Risk/10000)/10;
    if (Lots > 1)  
    {
    Lots = MathCeil(Lots);
    }
    if (Lots < 1)  
    {
    Lots = 1;
    }
    if (Lots > 100)  
    {  
     Lots = 100;  
     }
   }
        

     
	            
/////////////////////////////////////////////////
//  Process the next bar details
/////////////////////////////////////////////////

if (newbar != TimeDayOfWeek(CurTime())) 
{
	 newbar        = TimeDayOfWeek(CurTime());
	 //Newbar will be reset to 999 if the once-a-day order operations below fail, to ensure that they are retried on the next tick.


	  MacdPrevious  = iMACD(NULL,10080,12,26,9,PRICE_CLOSE,MODE_MAIN,1);
	  MacdPrevious2 = iMACD(NULL,10080,12,26,9,PRICE_CLOSE,MODE_MAIN,2);
	  
	  OsMAPrevious  = iOsMA(NULL,10080,12,26,9,PRICE_CLOSE,1);
	  OsMAPrevious2 = iOsMA(NULL,10080,12,26,9,PRICE_CLOSE,2);
	  //OsMAPrevious  = iCustom(NULL,10080,"OsMAtestclone_0.5",12,26,9,0,1);
	  //OsMAPrevious2 = iCustom(NULL,10080,"OsMAtestclone_0.5",12,26,9,0,2);
	  //OsMAPrevious  = iCustom(NULL,PERIOD_D1,"OsMA_5_bar_rolling_0.4",12,26,9,0,1);
	  //OsMAPrevious2 = iCustom(NULL,PERIOD_D1,"OsMA_5_bar_rolling_0.4",12,26,9,0,2);

     /*
     Force = iForce(NULL,1440,2,MODE_EMA,PRICE_CLOSE,1); 
     ForcePos = iForce(NULL,1440,2,MODE_EMA,PRICE_CLOSE,1) > 0;
	  ForceNeg = iForce(NULL,1440,2,MODE_EMA,PRICE_CLOSE,1) < 0;
      */
      
	  WilliamsBuy = iWPR(NULL,1440,24,1) < -25;
	  WilliamsSell = iWPR(NULL,1440,24,1) > -75;


	  if (MacdPrevious > MacdPrevious2) Direction = 1;
	  if (MacdPrevious < MacdPrevious2) Direction = -1;
	  if (MacdPrevious == MacdPrevious2) Direction = 0;
	  
	  if (OsMAPrevious > OsMAPrevious2) OsMADirection = 1;
	  if (OsMAPrevious < OsMAPrevious2) OsMADirection = -1;
	  if (OsMAPrevious == OsMAPrevious2) OsMADirection = 0;
	          
        
        

/////////////////////////////////////////////////
//  Pending Order Management
/////////////////////////////////////////////////

   total=OrdersTotal();
      TradesThisSymbol=0;
      for(cnt=0;cnt<total;cnt++)
      { 
          OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      
          if(OrderSymbol()==Symbol())
          {
            TradesThisSymbol ++;
          } // close for if(OrderSymbol()==Symbol())
      } // close for for(cnt=0;cnt<total;cnt++)        

   if(TradesThisSymbol > 0)
	{
      total=OrdersTotal();
      for(cnt=0;cnt<total;cnt++)
  	   { 
  	      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

         if(OrderSymbol()==Symbol() && OrderType()==OP_BUYSTOP)
         {

				if(OsMADirection == -1)
  				{ 
  				   OperationSuccess=OrderDelete(OrderTicket());
  				   if (OperationSuccess==FALSE)
  				      {
  				      newbar=999;
  				      return(0);
  				      }
				} // close for if(Direction == -1)
			} // close for if(OrderSymbol()==Symbol() && OrderType()==OP_BUYSTOP)

         if(OrderSymbol()==Symbol() && OrderType()==OP_SELLSTOP)
         {

				if(OsMADirection == 1)
  				{ 
  				   OperationSuccess=OrderDelete(OrderTicket());
  				   if (OperationSuccess==FALSE)
  				      {
  				      newbar=999;
  				      return(0);
  				      }
				} //close for if(Direction == 1)
			} //close for if(OrderSymbol()==Symbol() && OrderType()==OP_SELLSTOP)


         if(OrderSymbol()==Symbol() && OrderType()==OP_BUYSTOP)
   	   {
				if(iHigh(Symbol(),PERIOD_D1, 1) < iHigh(Symbol(),PERIOD_D1, 2))
	  			{ 
					if(iHigh(Symbol(),PERIOD_D1, 1) > (Ask + 16 * Point))
	  				{ 
	  	   		  OperationSuccess=OrderModify(OrderTicket(),iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point,iLow(Symbol(),PERIOD_D1, 1) - 1 * Point,iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point + TakeProfit * Point,0,Cyan);
  				      if (OperationSuccess==FALSE)
  				         {
  				         newbar=999;
  				         return(0);
  				         }
	  				} //close for if(iHigh(Symbol(),PERIOD_D1, 1) > (Ask + 16 * Point))
	  				else
	  				{
	  				  OperationSuccess=OrderModify(OrderTicket(),Ask + 16 * Point,iLow(Symbol(),PERIOD_D1, 1) - 1 * Point,Ask + 16 * Point + TakeProfit * Point,0,Cyan);
  				      if (OperationSuccess==FALSE)
  				         {
  				         newbar=999;
  				         return(0);
  				         }
	  				
	  				} //close for else statement
	  			} //close for if(iHigh(Symbol(),PERIOD_D1, 1) < iHigh(Symbol(),PERIOD_D1, 2))
	  		} //close for if(OrderSymbol()==Symbol() && OrderType()==OP_BUYSTOP)
	  
	      if(OrderSymbol()==Symbol() && OrderType()==OP_SELLSTOP)
   		{
				if(iLow(Symbol(),PERIOD_D1, 1) > iLow(Symbol(),PERIOD_D1, 2))
				{ 
					if(iLow(Symbol(),PERIOD_D1, 1) < (Bid - 16 * Point))
					{
		   		  OperationSuccess=OrderModify(OrderTicket(),iLow(Symbol(),PERIOD_D1, 1) - 1 * Point,iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point,iLow(Symbol(),PERIOD_D1, 1) - 1 * Point - TakeProfit * Point,0,Cyan);
  				      if (OperationSuccess==FALSE)
  				         {
  				         newbar=999;
  				         return(0);
  				         }
					} // close for if(iLow(Symbol(),PERIOD_D1, 1) < (Bid - 16 * Point))
					else
					{
					  OperationSuccess=OrderModify(OrderTicket(),Bid - 16 * Point,iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point,Bid - 16 * Point - TakeProfit * Point,0,Cyan);
  				      if (OperationSuccess==FALSE)
  				         {
  				         newbar=999;
  				         return(0);
  				         }
      
					} //close for else statement
				} //close for if(iLow(Symbol(),PERIOD_D1, 1) > iLow(Symbol(),PERIOD_D1, 2))
			} //close for if(OrderSymbol()==Symbol() && OrderType()==OP_SELLSTOP)
		} // close for for(cnt=0;cnt<total;cnt++)
	} // close for if(TradesThisSymbol > 0)


/////////////////////////////////////////////////
//  NEW Orders to Place
/////////////////////////////////////////////////


   total=OrdersTotal();
     TradesThisSymbol=0;
     for(cnt=0;cnt<total;cnt++)
     { 
         OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      
         if(OrderSymbol()==Symbol())
         {
           TradesThisSymbol ++;
         } // close for if(OrderSymbol()==Symbol())
     } // close for for(cnt=0;cnt<total;cnt++)        

	 if(TradesThisSymbol < 1) 
	 {
	   
	   if(OsMADirection == 1 && WilliamsBuy)
		{
			PriceOpen = iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point;		// Buy 1 point above high of previous candle
			if(PriceOpen > (Ask + 16 * Point))  // Check if buy price is a least 16 points > Ask
			{
				OperationSuccess=OrderSend(Symbol(),OP_BUYSTOP,Lots,PriceOpen,Slippage,iLow(Symbol(),PERIOD_D1, 1) - 1 * Point,PriceOpen + TakeProfit * Point,"Buy Entry Order placed at "+CurTime(),0,0,Green);
		      if (OperationSuccess==FALSE)
		         {
		         newbar=999;
		         return(0);
		         }
      
			} // close for if(PriceOpen > (Ask + 16 * Point))
			else
			{
			   NewPrice = Ask + 16 * Point;
				OperationSuccess=OrderSend(Symbol(),OP_BUYSTOP,Lots,NewPrice,Slippage,iLow(Symbol(),PERIOD_D1, 1) - 1 * Point,NewPrice + TakeProfit * Point,"Buy Entry Order placed at "+CurTime(),0,0,Green);
		      if (OperationSuccess==FALSE)
		         {
		         newbar=999;
		         return(0);
		         }
 			} // close for else statement
	   } // close for if(Direction == 1 && WilliamsSell)
     
     
     if(OsMADirection == -1 && WilliamsSell)
     {
         PriceOpen = iLow(Symbol(),PERIOD_D1, 1) - 1 * Point;
			if(PriceOpen < (Bid - 16 * Point)) // Check if buy price is a least 16 points < Bid
			{
				OperationSuccess=OrderSend(Symbol(),OP_SELLSTOP,Lots,PriceOpen,Slippage,iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point,PriceOpen - TakeProfit * Point,"Sell Entry Order placed at "+CurTime(),0,0,Green);
		      if (OperationSuccess==FALSE)
		         {
		         newbar=999;
		         return(0);
		         }
			} // close for if(PriceOpen < (Bid - 16 * Point))
			else
			{
				NewPrice = Bid - 16 * Point;
				OperationSuccess=OrderSend(Symbol(),OP_SELLSTOP,Lots,NewPrice,Slippage,iHigh(Symbol(),PERIOD_D1, 1) + 1 * Point,NewPrice - TakeProfit * Point,"Sell Entry Order placed at "+CurTime(),0,0,Green);
		      if (OperationSuccess==FALSE)
		         {
		         newbar=999;
		         return(0);
		         }
			} // close for else statement

      } // close for if(Direction == -1 && WilliamsBuy)
    } //Close of if(TradesThisSymbol < 1)





} // close for if (newbar != Time[0]) 




/////////////////////////////////////////////////
//  Stop Loss Management
/////////////////////////////////////////////////

total=OrdersTotal();
  TradesThisSymbol=0;
  for(cnt=0;cnt<total;cnt++)
  { 
      OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);
      
      if(OrderSymbol()==Symbol())
      {
        TradesThisSymbol ++;
      } // close for if(OrderSymbol()==Symbol())
  } // close for for(cnt=0;cnt<total;cnt++)        

if(TradesThisSymbol > 0)
{
  total=OrdersTotal();
  for(cnt=0;cnt<total;cnt++)
  { 
     OrderSelect(cnt, SELECT_BY_POS, MODE_TRADES);

     if(OrderSymbol()==Symbol() && OrderType()==OP_BUY)
    	{
         
         if (IsTesting() && LastLogTime != iTime(NULL,PERIOD_H1,1)) 
         {
            LastLogTime=iTime(NULL,PERIOD_H1,1);
            OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()+Point*1,0,Cyan);
         }


			if(Ask-OrderOpenPrice() > (TrailingStop * Point))
  			{ 
				if(OrderStopLoss() < (Ask - TrailingStop * Point))
				{ 
	   		   OrderModify(OrderTicket(),OrderOpenPrice(),Ask - TrailingStop * Point,Ask + TakeProfit * Point,0,Cyan);
               //return(0);					

				} // close for if(OrderStopLoss() < (Ask - TrailingStop * Point))
			} // close for if(Ask-OrderOpenPrice() > (TrailingStop * Point))
		} // close for if(OrderSymbol()==Symbol() && OrderType()==OP_BUY)
	
     if(OrderSymbol()==Symbol() && OrderType()==OP_SELL)
		{
		
         if (IsTesting() && LastLogTime != iTime(NULL,PERIOD_H1,1)) 
         {
            LastLogTime=iTime(NULL,PERIOD_H1,1);
            OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()-Point*1,0,Cyan);
         }


			if(OrderOpenPrice() - Bid > (TrailingStop * Point))
			{ 
				if(OrderStopLoss() > (Bid + TrailingStop * Point))
				{ 
	   		   OrderModify(OrderTicket(),OrderOpenPrice(),Bid + TrailingStop * Point,Bid - TakeProfit * Point,0,Cyan);
               //return(0);					

				} // close for if(OrderStopLoss() > (Bid + TrailingStop * Point))
			} // close for if(OrderOpenPrice() - Bid > (TrailingStop * Point))
         //else if (IsTesting()) OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),OrderTakeProfit()-Point*1,0,Cyan);
		 } // close for if(OrderSymbol()==Symbol() && OrderType()==OP_SELL)
  	  } // close for for(cnt=0;cnt<total;cnt++)
   } // close for if(TradesThisSymbol > 0)
  
	

//return(0);

} // close for start

Profitability Reports

EUR/USD Jul 2025 - Sep 2025
399.03
Total Trades 20
Won Trades 18
Lost trades 2
Win Rate 90.00 %
Expected payoff 52659.40
Gross Profit 1055834.00
Gross Loss -2646.00
Total Net Profit 1053188.00
-100%
-50%
0%
50%
100%
AUD/USD Jan 2025 - Jul 2025
2.75
Total Trades 25
Won Trades 24
Lost trades 1
Win Rate 96.00 %
Expected payoff 37.36
Gross Profit 1468.00
Gross Loss -534.00
Total Net Profit 934.00
-100%
-50%
0%
50%
100%
AUD/USD Oct 2024 - Jan 2025
2.49
Total Trades 9
Won Trades 0
Lost trades 0
Win Rate 0.00 %
Expected payoff 64.22
Gross Profit 965.00
Gross Loss -387.00
Total Net Profit 578.00
-100%
-50%
0%
50%
100%
USD/CAD Jul 2025 - Sep 2025
1.90
Total Trades 23
Won Trades 21
Lost trades 2
Win Rate 91.30 %
Expected payoff 29.67
Gross Profit 1440.09
Gross Loss -757.63
Total Net Profit 682.46
-100%
-50%
0%
50%
100%
NZD/USD Jul 2025 - Sep 2025
1.66
Total Trades 22
Won Trades 20
Lost trades 2
Win Rate 90.91 %
Expected payoff 27.77
Gross Profit 1538.00
Gross Loss -927.00
Total Net Profit 611.00
-100%
-50%
0%
50%
100%
USD/CHF Jan 2025 - Jul 2025
1.49
Total Trades 31
Won Trades 30
Lost trades 1
Win Rate 96.77 %
Expected payoff 17.26
Gross Profit 1627.39
Gross Loss -1092.25
Total Net Profit 535.14
-100%
-50%
0%
50%
100%
AUD/USD Jul 2025 - Sep 2025
1.28
Total Trades 16
Won Trades 14
Lost trades 2
Win Rate 87.50 %
Expected payoff 14.88
Gross Profit 1098.00
Gross Loss -860.00
Total Net Profit 238.00
-100%
-50%
0%
50%
100%
EUR/USD Jan 2025 - Jul 2025
1.27
Total Trades 38
Won Trades 36
Lost trades 2
Win Rate 94.74 %
Expected payoff 10.34
Gross Profit 1838.00
Gross Loss -1445.00
Total Net Profit 393.00
-100%
-50%
0%
50%
100%
AUD/USD Jul 2025 - Sep 2025
1.03
Total Trades 16
Won Trades 14
Lost trades 2
Win Rate 87.50 %
Expected payoff 1.69
Gross Profit 887.00
Gross Loss -860.00
Total Net Profit 27.00
-100%
-50%
0%
50%
100%
USD/CAD Jan 2025 - Jul 2025
0.66
Total Trades 33
Won Trades 30
Lost trades 3
Win Rate 90.91 %
Expected payoff -26.67
Gross Profit 1719.65
Gross Loss -2599.62
Total Net Profit -879.97
-100%
-50%
0%
50%
100%
GBP/AUD Jan 2025 - Jul 2025
0.61
Total Trades 34
Won Trades 32
Lost trades 2
Win Rate 94.12 %
Expected payoff -22.37
Gross Profit 1212.76
Gross Loss -1973.31
Total Net Profit -760.55
-100%
-50%
0%
50%
100%
GBP/CAD Jul 2025 - Sep 2025
0.61
Total Trades 12
Won Trades 10
Lost trades 2
Win Rate 83.33 %
Expected payoff -40.71
Gross Profit 770.60
Gross Loss -1259.09
Total Net Profit -488.49
-100%
-50%
0%
50%
100%
GBP/AUD Jul 2025 - Sep 2025
0.44
Total Trades 10
Won Trades 8
Lost trades 2
Win Rate 80.00 %
Expected payoff -70.13
Gross Profit 552.79
Gross Loss -1254.10
Total Net Profit -701.31
-100%
-50%
0%
50%
100%
NZD/USD Jan 2025 - Jul 2025
0.43
Total Trades 33
Won Trades 28
Lost trades 5
Win Rate 84.85 %
Expected payoff -43.97
Gross Profit 1103.00
Gross Loss -2554.00
Total Net Profit -1451.00
-100%
-50%
0%
50%
100%
GBP/AUD Oct 2025 - Feb 2026
0.40
Total Trades 23
Won Trades 21
Lost trades 2
Win Rate 91.30 %
Expected payoff -37.06
Gross Profit 562.10
Gross Loss -1414.45
Total Net Profit -852.35
-100%
-50%
0%
50%
100%
USD/CHF Jul 2025 - Sep 2025
0.39
Total Trades 19
Won Trades 15
Lost trades 4
Win Rate 78.95 %
Expected payoff -89.13
Gross Profit 1086.03
Gross Loss -2779.54
Total Net Profit -1693.51
-100%
-50%
0%
50%
100%
USD/CHF Jul 2025 - Sep 2025
0.37
Total Trades 19
Won Trades 16
Lost trades 3
Win Rate 84.21 %
Expected payoff -76.56
Gross Profit 863.20
Gross Loss -2317.88
Total Net Profit -1454.68
-100%
-50%
0%
50%
100%
EUR/USD Oct 2025 - Feb 2026
0.33
Total Trades 19
Won Trades 16
Lost trades 3
Win Rate 84.21 %
Expected payoff -77.05
Gross Profit 726.00
Gross Loss -2190.00
Total Net Profit -1464.00
-100%
-50%
0%
50%
100%
GBP/CAD Jan 2025 - Jul 2025
0.32
Total Trades 30
Won Trades 23
Lost trades 7
Win Rate 76.67 %
Expected payoff -134.53
Gross Profit 1899.58
Gross Loss -5935.62
Total Net Profit -4036.04
-100%
-50%
0%
50%
100%
AUD/USD Oct 2025 - Feb 2026
0.30
Total Trades 18
Won Trades 15
Lost trades 3
Win Rate 83.33 %
Expected payoff -42.33
Gross Profit 330.00
Gross Loss -1092.00
Total Net Profit -762.00
-100%
-50%
0%
50%
100%
NZD/USD Oct 2024 - Jan 2025
0.27
Total Trades 7
Won Trades 6
Lost trades 1
Win Rate 85.71 %
Expected payoff -70.57
Gross Profit 184.00
Gross Loss -678.00
Total Net Profit -494.00
-100%
-50%
0%
50%
100%
GBP/AUD Jul 2025 - Sep 2025
0.24
Total Trades 11
Won Trades 10
Lost trades 1
Win Rate 90.91 %
Expected payoff -45.35
Gross Profit 158.35
Gross Loss -657.24
Total Net Profit -498.89
-100%
-50%
0%
50%
100%
GBP/USD Jan 2025 - Jul 2025
0.23
Total Trades 24
Won Trades 20
Lost trades 4
Win Rate 83.33 %
Expected payoff -110.00
Gross Profit 805.00
Gross Loss -3445.00
Total Net Profit -2640.00
-100%
-50%
0%
50%
100%
USD/JPY Jan 2025 - Jul 2025
0.00
Total Trades 36
Won Trades 36
Lost trades 0
Win Rate 100.00 %
Expected payoff 51.54
Gross Profit 1855.48
Gross Loss 0.00
Total Net Profit 1855.48
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
0.00
Total Trades 15
Won Trades 15
Lost trades 0
Win Rate 100.00 %
Expected payoff 68.80
Gross Profit 1032.00
Gross Loss 0.00
Total Net Profit 1032.00
-100%
-50%
0%
50%
100%
USD/JPY Jul 2025 - Sep 2025
0.00
Total Trades 20
Won Trades 20
Lost trades 0
Win Rate 100.00 %
Expected payoff 71.53
Gross Profit 1430.55
Gross Loss 0.00
Total Net Profit 1430.55
-100%
-50%
0%
50%
100%
GBP/USD Jul 2025 - Sep 2025
0.00
Total Trades 15
Won Trades 15
Lost trades 0
Win Rate 100.00 %
Expected payoff 46.20
Gross Profit 693.00
Gross Loss 0.00
Total Net Profit 693.00
-100%
-50%
0%
50%
100%
USD/JPY Jul 2025 - Sep 2025
0.00
Total Trades 20
Won Trades 20
Lost trades 0
Win Rate 100.00 %
Expected payoff 53.53
Gross Profit 1070.58
Gross Loss 0.00
Total Net Profit 1070.58
-100%
-50%
0%
50%
100%

Comments