input: Write a python function to evaluate a trading strategy by calculating average return, Sharpe ratio, and maximum drawdown.
  assert evaluate_strategy([100, 110, 120, 130, 140, 150]) == (0.1, 2.23606797749979, 10)
  assert evaluate_strategy([100, 90, 80, 70, 60, 50]) == (-0.1111111111111111, 0.0, 50)
  assert evaluate_strategy([100, 105, 102, 108, 112, 115]) == (0.03571428571428571, 1.479019945774904, 5)
output: def evaluate_strategy(prices):
      import numpy as np
  
      # Calculate daily returns
      returns = np.diff(prices) / prices[:-1]
      
      # Calculate average return
      avg_return = np.mean(returns)
      
      # Calculate standard deviation of returns
      std_dev = np.std(returns)
      
      # Calculate Sharpe ratio (assuming risk-free rate = 0)
      sharpe_ratio = avg_return / std_dev if std_dev != 0 else 0.0
      
      # Calculate maximum drawdown
      cumulative_returns = np.cumprod(1 + returns)
      peak = np.maximum.accumulate(cumulative_returns)
      drawdown = (cumulative_returns - peak) / peak
      max_drawdown = np.min(drawdown) * -100  # Convert to positive percentage
      
      return avg_return, sharpe_ratio, max_drawdown