public LuanchScalp(Form3 form3, EmaSettings emaSett) { form = form3; S = new AlsiUtils.Statistics(); S.OnStatsCaculated += new Statistics.StatsCalculated(S_OnStatsCaculated); E = new AlsiUtils.Strategies.Parameter_EMA_Scalp(); ema = emaSett; }
public LuanchScalp(Form3 form3,EmaSettings emaSett) { form = form3; S = new AlsiUtils.Statistics(); S.OnStatsCaculated += new Statistics.StatsCalculated(S_OnStatsCaculated); E = new AlsiUtils.Strategies.Parameter_EMA_Scalp(); ema=emaSett ; }
public static List<Trade> DoYourThing(string Instrument,Parameter_EMA_Scalp Param,DateTime StartPeriod) { Statistics _Stats = new Statistics(); GlobalObjects.TimeInterval t = GlobalObjects.TimeInterval.Minute_5; DataBase.dataTable dt = DataBase.dataTable.MasterMinute; var _tempTradeList = AlsiTrade_Backend.RunCalcs.RunEMAScalp(Param, t, false, StartPeriod, DateTime.Now.AddHours(5), dt); var _trades = _Stats.CalcBasicTradeStats_old(_tempTradeList); return _trades; }
public static Trade GetLastTrade(Parameter_EMA_Scalp Parameter, GlobalObjects.TimeInterval t) { var _Stats = new AlsiUtils.Statistics(); var dt = DataBase.dataTable.MasterMinute; var _tempTradeList = AlsiTrade_Backend.RunCalcs.RunEMAScalp(Parameter, t, true, DateTime.Now.AddMonths(-1), DateTime.Now.AddHours(12), dt); var _trades = _Stats.CalcBasicTradeStats_old(_tempTradeList); _trades.Reverse(); return(_trades[0]); }
private void TradeToCandle() { //Laptop // string css = @"Data Source=ALSI-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; //PC string css = @"Data Source=PIETER-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; AlsiUtils.Data_Objects.GlobalObjects.CustomConnectionString = css; // DateTime s = new DateTime(2006, 01, 01); // DateTime e = new DateTime(2006, 12, 15); DateTime s = new DateTime(2012, 1, 1); DateTime e = new DateTime(2013, 12, 29); var prices = AlsiUtils.DataBase.readDataFromDataBase(GlobalObjects.TimeInterval.Minute_5, AlsiUtils.DataBase.dataTable.MasterMinute, s, e, false); Debug.WriteLine("Start Date " + prices[0].TimeStamp); //for (int x = 2; x < 50; x++) //{ AlsiUtils.Strategies.Parameter_EMA_Scalp E = new AlsiUtils.Strategies.Parameter_EMA_Scalp() { A_EMA1 = 16, A_EMA2 = 17, B_EMA1 = 43, B_EMA2 = 45, C_EMA = 52, TakeProfit = 450, StopLoss = -300, CloseEndofDay = false, Period = prices.Count, }; // takep = E.TakeProfit; // takel = E.StopLoss; AlsiUtils.Statistics S = new AlsiUtils.Statistics(); S.OnStatsCaculated += new AlsiUtils.Statistics.StatsCalculated(S_OnStatsCaculated); var Trades = AlsiUtils.Strategies.EMA_Scalp.EmaScalp(E, prices, false); Trades = S.CalcBasicTradeStats_old(Trades); var rr = Statistics.IntratradeToCandle(Trades); var RR = CompletedTrade.CreateList(rr); PrintTradesonly(RR); }
void S_OnStatsCaculated(object sender, Statistics.StatsCalculatedEvent e) { string position = E.A_EMA1 + "-" + E.A_EMA2 + " " + E.B_EMA1 + "-" + E.B_EMA2 + " " + E.C_EMA + "\n" + e.SumStats.Total_Avg_PL; form.UpdatePos(position); if (e.SumStats.Total_Avg_PL>10 || e.SumStats.Total_Avg_PL<-10)//(e.SumStats.TotalProfit > maxprof) { //maxprof = e.SumStats.TotalProfit; StringBuilder stat = new StringBuilder(""); Debug.WriteLine("============STATS=============="); Debug.WriteLine("Total PL " + e.SumStats.TotalProfit); Debug.WriteLine("# Trades " + e.SumStats.TradeCount); Debug.WriteLine("Tot Avg PL " + e.SumStats.Total_Avg_PL); Debug.WriteLine("Prof % " + e.SumStats.Pct_Prof); Debug.WriteLine("Loss % " + e.SumStats.Pct_Loss); Debug.WriteLine("Take P " + takep); Debug.WriteLine("Take L " + takel); stat.Append("============STATS=============="); stat.Append("\nTotal PL " + e.SumStats.TotalProfit); stat.Append("\n# Trades " + e.SumStats.TradeCount); stat.Append("\nTot Avg PL " + e.SumStats.Total_Avg_PL); stat.Append("\nProf % " + e.SumStats.Pct_Prof); stat.Append("\nLoss % " + e.SumStats.Pct_Loss); stat.Append("\nTake P " + takep); stat.Append("\nTake L " + takel); form.UpdateDisplay(stat.ToString()); SimDBDataContext dc = new SimDBDataContext(); tbl2Min tbl = new tbl2Min() { Trades = (int)e.SumStats.TradeCount, TotalPL = (int)e.SumStats.TotalProfit, AvgPL = e.SumStats.Total_Avg_PL, Win = e.SumStats.Pct_Prof, Loose = e.SumStats.Pct_Loss, E_A1 = E.A_EMA1, E_A2 = E.A_EMA2, E_B1 = E.B_EMA1, E_B2 = E.B_EMA2, E_C = E.C_EMA, Period = 2012, CloseEndDay = "True", }; dc.tbl2Mins.InsertOnSubmit(tbl); dc.SubmitChanges(); } }
public void RunSingleNEW() { //Laptop // string css = @"Data Source=ALSI-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; //PC string css = @"Data Source=PIETER-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; AlsiUtils.Data_Objects.GlobalObjects.CustomConnectionString = css; // DateTime s = new DateTime(2006, 01, 01); // DateTime e = new DateTime(2006, 12, 15); DateTime s = new DateTime(2011, 12, 15); DateTime e = new DateTime(2013, 09, 29); var prices = AlsiUtils.DataBase.readDataFromDataBase(GlobalObjects.TimeInterval.Minute_5, AlsiUtils.DataBase.dataTable.MasterMinute, s, e, false); Debug.WriteLine("Start Date " + prices[0].TimeStamp); //for (int x = 2; x < 50; x++) //{ AlsiUtils.Strategies.Parameter_EMA_Scalp E = new AlsiUtils.Strategies.Parameter_EMA_Scalp() { A_EMA1 = 18, A_EMA2 = 19, B_EMA1 = 25, B_EMA2 = 26, C_EMA = 32, TakeProfit = 25, StopLoss = -25, CloseEndofDay = true, Period = prices.Count, }; var Trades = AlsiUtils.Strategies.EmaSalp2.EmaScalp(E, prices, false); S = new AlsiUtils.Statistics(); S.OnStatsCaculated += new AlsiUtils.Statistics.StatsCalculated(S_OnStatsCaculated); //var Trades = AlsiUtils.Strategies.EMA_Scalp.EmaScalp(E, prices, false); Trades = S.CalcBasicTradeStats(Trades); // var NewTrades = AlsiUtils.Strategies.TradeStrategy.Expansion.ApplyRegressionFilter(10, Trades); // NewTrades = S.CalcExpandedTradeStats(NewTrades); // PrintTradesonly(Trades); }
public static Trade GetLastTrade(Parameter_EMA_Scalp Parameter, GlobalObjects.TimeInterval t) { var _Stats = new AlsiUtils.Statistics(); var dt = DataBase.dataTable.MasterMinute; var _tempTradeList = AlsiTrade_Backend.RunCalcs.RunEMAScalp(Parameter, t, true, DateTime.Now.AddMonths(-1), DateTime.Now.AddHours(12), dt); var _trades = _Stats.CalcBasicTradeStats_old(_tempTradeList); _trades.Reverse(); return _trades[0]; }
void _Stats_OnStatsCaculated(object sender, Statistics.StatsCalculatedEvent e) { Debug.WriteLine("============STATS=============="); Debug.WriteLine("Total PL " + e.SumStats.TotalProfit); Debug.WriteLine("# Trades " + e.SumStats.TradeCount); Debug.WriteLine("Tot Avg PL " + e.SumStats.Total_Avg_PL); Debug.WriteLine("Prof % " + e.SumStats.Pct_Prof); Debug.WriteLine("Loss % " + e.SumStats.Pct_Loss); PopulateStatBox(e.SumStats); }
public void RunSingle() { //Laptop // string css = @"Data Source=ALSI-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; //PC string css = @"Data Source=PIETER-PC\;Initial Catalog=AlsiTrade;Integrated Security=True"; AlsiUtils.Data_Objects.GlobalObjects.CustomConnectionString = css; // DateTime s = new DateTime(2006, 01, 01); // DateTime e = new DateTime(2006, 12, 15); DateTime s = new DateTime(2012, 1, 1); DateTime e = new DateTime(2013, 12, 29); var prices = AlsiUtils.DataBase.readDataFromDataBase(GlobalObjects.TimeInterval.Minute_2, AlsiUtils.DataBase.dataTable.MasterMinute, s, e, false); Debug.WriteLine("Start Date " + prices[0].TimeStamp); //for (int x = 2; x < 50; x++) //{ AlsiUtils.Strategies.Parameter_EMA_Scalp E = new AlsiUtils.Strategies.Parameter_EMA_Scalp() { A_EMA1 = 16, A_EMA2 = 17, B_EMA1 = 43, B_EMA2 = 45, C_EMA = 52, TakeProfit = 450, StopLoss = -300, CloseEndofDay = false, Period = prices.Count, }; //takep = E.TakeProfit; //takel = E.StopLoss; AlsiUtils.Statistics S = new AlsiUtils.Statistics(); S.OnStatsCaculated += new AlsiUtils.Statistics.StatsCalculated(S_OnStatsCaculated); var Trades = AlsiUtils.Strategies.EMA_Scalp.EmaScalp(E, prices, false); Trades = S.CalcBasicTradeStats_old(Trades); var NewTrades = AlsiUtils.Strategies.TradeStrategy.Expansion.ApplyRegressionFilter(10, Trades); NewTrades = S.CalcExpandedTradeStats(NewTrades); // PrintTradesonly(NewTrades); }