Estrategia de crossover promedio móvil es una estrategia ampliamente utilizada en algo trading. Es allí una manera de mejorar el rendimiento en un promedio móvil de los crossover stratergy. He utilizado este sitio para hacer el backtest MA crossover stratergy en ETF.
los parámetros utilizados
ETF= DIA
MA Length=21 days(long),9 days(short)
Trade On= Day of cross
start date = 03-Jan-2000
end date= 02-Jul-2015
Advance setting= Default
Backtest estadísticas
Total Return= +62.7
Buy Sell Return Days In Trade
Mar 20, 2000 Apr 17, 2000 -0.76 20
May 23, 2000 May 26, 2000 -1.26 3
Jun 07, 2000 Jun 21, 2000 -3.08 10
Jul 11, 2000 Jul 31, 2000 -1.96 14
Aug 10, 2000 Sep 18, 2000 -0.65 26
Oct 31, 2000 Nov 20, 2000 -4.19 14
Dec 11, 2000 Dec 26, 2000 +0.15 10
Dec 28, 2000 Jan 17, 2001 -2.56 12
Jan 30, 2001 Feb 22, 2001 -2.68 16
Apr 11, 2001 Jun 05, 2001 +12.03 37
Jul 23, 2001 Aug 01, 2001 +1.34 7
Aug 03, 2001 Aug 08, 2001 -2.30 3
Oct 10, 2001 Jan 16, 2002 +5.44 67
Feb 12, 2002 Mar 28, 2002 +5.28 31
May 16, 2002 May 31, 2002 -3.68 10
Aug 07, 2002 Sep 05, 2002 -1.35 20
Oct 18, 2002 Dec 12, 2002 +3.32 38
Jan 08, 2003 Jan 24, 2003 -5.47 11
Feb 27, 2003 Mar 03, 2003 -0.57 2
Mar 20, 2003 Jul 01, 2003 +9.71 71
Jul 14, 2003 Aug 11, 2003 +0.78 20
Aug 12, 2003 Sep 29, 2003 +1.06 33
Oct 09, 2003 Oct 31, 2003 +1.04 16
Nov 04, 2003 Nov 20, 2003 -2.07 12
Dec 03, 2003 Feb 04, 2004 +6.11 42
Feb 12, 2004 Mar 04, 2004 -1.07 14
Apr 02, 2004 Apr 23, 2004 +0.02 14
Jun 02, 2004 Jul 07, 2004 -0.14 23
Aug 25, 2004 Sep 23, 2004 -1.30 20
Nov 04, 2004 Jan 10, 2005 +3.49 45
Feb 04, 2005 Mar 18, 2005 -0.60 29
May 06, 2005 Jun 28, 2005 +0.96 36
Jul 15, 2005 Aug 10, 2005 -0.05 18
Sep 12, 2005 Sep 23, 2005 -2.40 9
Oct 28, 2005 Dec 15, 2005 +5.02 33
Dec 23, 2005 Dec 30, 2005 -1.66 4
Jan 04, 2006 Jan 24, 2006 -1.54 13
Feb 08, 2006 Mar 10, 2006 +2.27 21
Mar 16, 2006 Apr 06, 2006 -0.31 15
Apr 21, 2006 May 19, 2006 -1.46 20
Jun 27, 2006 Jul 17, 2006 -1.59 13
Jul 31, 2006 Feb 28, 2007 +11.03 145
Mar 23, 2007 Jun 12, 2007 +6.97 55
Jun 21, 2007 Jun 27, 2007 -0.92 4
Jul 09, 2007 Jul 31, 2007 -3.04 16
Aug 31, 2007 Oct 22, 2007 +1.83 35
Dec 05, 2007 Dec 26, 2007 +0.96 14
Feb 06, 2008 Feb 15, 2008 +1.07 7
Feb 25, 2008 Mar 07, 2008 -5.29 9
Mar 26, 2008 May 21, 2008 +2.11 40
Jul 24, 2008 Aug 26, 2008 +0.63 23
Nov 04, 2008 Nov 14, 2008 -12.46 8
Dec 05, 2008 Dec 30, 2008 +0.42 16
Jan 06, 2009 Jan 15, 2009 -8.84 7
Mar 19, 2009 Jun 23, 2009 +13.41 66
Jul 20, 2009 Oct 06, 2009 +10.72 55
Oct 14, 2009 Nov 03, 2009 -2.33 14
Nov 11, 2009 Jan 25, 2010 -0.47 49
Feb 19, 2010 May 06, 2010 +1.50 53
Jun 17, 2010 Jul 01, 2010 -6.74 10
Jul 16, 2010 Aug 18, 2010 +3.52 23
Sep 09, 2010 Nov 19, 2010 +8.07 51
Dec 07, 2010 Mar 03, 2011 +8.46 59
Mar 29, 2011 May 19, 2011 +3.09 36
Jun 29, 2011 Jul 29, 2011 -0.99 21
Aug 31, 2011 Sep 14, 2011 -3.06 9
Sep 16, 2011 Sep 20, 2011 -0.85 2
Oct 13, 2011 Nov 21, 2011 +0.84 27
Dec 07, 2011 Apr 10, 2012 +4.97 84
Apr 26, 2012 May 11, 2012 -2.78 11
Jun 15, 2012 Aug 31, 2012 +3.22 54
Sep 11, 2012 Oct 10, 2012 +0.35 21
Nov 30, 2012 Apr 25, 2013 +13.92 99
Apr 30, 2013 Jun 06, 2013 +1.79 26
Jul 09, 2013 Aug 14, 2013 +0.48 26
Sep 12, 2013 Oct 03, 2013 -2.00 15
Oct 21, 2013 Dec 12, 2013 +2.76 37
Dec 23, 2013 Jan 22, 2014 +0.60 19
Feb 19, 2014 Mar 21, 2014 +1.76 22
Mar 28, 2014 Apr 14, 2014 -0.86 11
Apr 25, 2014 Jul 31, 2014 +1.75 67
Aug 20, 2014 Oct 01, 2014 -0.90 29
Oct 29, 2014 Dec 15, 2014 +1.67 32
Dec 29, 2014 Jan 13, 2015 -2.29 10
Feb 10, 2015 Mar 11, 2015 -0.94 20
Apr 15, 2015 May 06, 2015 -1.31 15
May 13, 2015 Jun 04, 2015 -0.63 15
Jun 23, 2015 Jul 01, 2015 -2.05 6
Desde el backtest de datos podemos inferir que el retorno total en porcentaje de la media móvil stragery es mucho menor (71%) que el punto de Referencia DIA (135%). Entonces, ¿cómo debemos optimizar nuestra MA crossover algoritmo para obtener un rendimiento total porcentaje igual o más que la de referencia. Cómo evitar que los rendimientos negativos ?
ejemplo
Dec 29, 2014 Jan 13, 2015 -2.29 10
Feb 10, 2015 Mar 11, 2015 -0.94 20
Apr 15, 2015 May 06, 2015 -1.31 15
una manera de prevenir las operaciones cuando el retorno están en negativo.
Considere la posibilidad de este pseudo-código, como la MA crossover algoritmo
initial_invest=1500 //initial investment amount
shareprice=15 // value of one share//
ma_short=9 // moving averages 9 days
ma_long=21
if ma_short crossabove ma_long
Buy share
elif ma_short crossbelow ma_long
sell share
endif