Example #1
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            try
            {
                if (ValidateInput())
                {
                    MarketResult market     = bsMarkets.Current as MarketResult;
                    String       searchTerm = txtSearchTerm.Text;
                    int          limit      = int.Parse(txtLimit.Text);

                    SearchResult sr = SmartAPIManager.Instance.Search(searchTerm, market, limit);

                    bsMgmr.DataSource     = sr.Mgmts;
                    bsProperty.DataSource = sr.Properties;

                    String info = String.Format("Mgmts: showing {0} out of {1}; Properties: showing {2} out of {3}",
                                                sr.MgmtShown, sr.MgmtCount, sr.PropertyShown, sr.PropertyCount);

                    lblInfo.Text = info;
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message, "Error searching", MessageBoxButtons.OK);
            }
        }
Example #2
0
        public MatchResult Handle(MatchByIdQuery query)
        {
            Match match = GetMatch(query.Id);

            if (match == null)
            {
                return(null);
            }

            ICollection <MarketResult> marketResults = new List <MarketResult>();
            IEnumerable <Market>       markets       = marketsHandler.Handle(new MarketsByMatchIdQuery(match.Id));

            foreach (var market in markets)
            {
                IEnumerable <Odd> odds = oddsHandler.Handle(new OddsByMarketIdQuery(market.Id));

                if (odds.Any())
                {
                    MarketResult marketResult = Mapper.Map <MarketResult>(market);
                    marketResult.Odds = Mapper.Map <IEnumerable <OddResult> >(odds);

                    marketResults.Add(marketResult);
                }
            }

            MatchResult matchResult = Mapper.Map <MatchResult>(match);

            matchResult.Tournament = GetTournament(match.TournamentId).Name;
            matchResult.HomeTeam   = GetTeam(match.HomeTeamId).Name;
            matchResult.AwayTeam   = GetTeam(match.AwayTeamId).Name;
            matchResult.Markets    = marketResults;

            return(matchResult);
        }
Example #3
0
        public static void PlotMarketResult(string path, MarketResult market_result)
        {
            PlotLine2D line_plot_2d = new PlotLine2D();

            AddBidAskTrades(line_plot_2d, market_result);
            ToolsPlotting.WriteToFile(path, line_plot_2d, SIZE_X, SIZE_Y);
        }
        public IActionResult Index()
        {
            //Arriba hacemos lo mismo
            //HomeVM homeVM = new HomeVM();
            //MarketForecasterV2 marketForecasterV2 = new MarketForecasterV2();
            // MarketForecaster marketForecaster = new MarketForecaster();
            MarketResult currentMarket = _marketForecaster.GetMarketPrediction();

            switch (currentMarket.MarketCondition)
            {
            case MarketCondition.StableDown:
                homeVM.MarketForecast = "Market shows signs to go down in a stable state";
                break;

            case MarketCondition.StableUp:
                homeVM.MarketForecast = "Market shows signs to go up in a stable state! It is a great sign to apply for credit applications!";
                break;

            case MarketCondition.Volatile:
                homeVM.MarketForecast = "Market shows signs of volatility. In uncertain times, it is good to have credit handy if you need extra funds!";
                break;

            default:
                homeVM.MarketForecast = "Apply for a credit card using our application!";
                break;
            }
            return(View(homeVM));
        }
Example #5
0
        public IActionResult Index()
        {
            MarketResult marketResult = _marketForecaster.GetMarketPrediction();

            switch (marketResult.MarketCondition)
            {
            case MarketCondition.StableUp:
                _homeVM.MarketForecast = "Market shows going up";

                break;

            case MarketCondition.StableDown:
                _homeVM.MarketForecast = "Market shows going down";
                break;

            case MarketCondition.Volatile:
                _homeVM.MarketForecast = "Market shows being volatile";
                break;

            default:
                _homeVM.MarketForecast = "Not returning data";
                break;
            }

            return(View(_homeVM));
        }
Example #6
0
        public IActionResult Index()
        {
            _logger.LogInformation("HomeController Index started");
            MarketResult currentMarket = _marketForecaster.GetMarketPrediction();

            switch (currentMarket.MarketCondition)
            {
            case MarketCondition.StableDown:
                homeVM.MarketForecast = "Market stable going down";
                break;

            case MarketCondition.StableUp:
                homeVM.MarketForecast = "Market stable going up";
                break;

            case MarketCondition.Volatile:
                homeVM.MarketForecast = "Market is volatile";
                break;

            default:
                homeVM.MarketForecast = "Situation Unknown with market";
                break;
            }
            _logger.LogInformation("HomeController Index ended");
            return(View(homeVM));
        }
        public IActionResult Index()
        {
            _logger.LogInformation("home Controller Index option Call");
            HomeVM       homeVM        = new HomeVM();
            MarketResult currentMarket = _marketForecaster.GetMarketPrediction();

            switch (currentMarket.MarketCondition)
            {
            case MarketCondition.StableDown:
                homeVM.MarketForecast = "Market shows signs to go down in a stable state! It is a not a good sign to apply for credit applications! But extra credit is always piece of mind if you have handy when you need it.";
                break;

            case MarketCondition.StableUp:
                homeVM.MarketForecast = "Market shows signs to go up in a stable state! It is a great sign to apply for credit applications!";
                break;

            case MarketCondition.Volatile:
                homeVM.MarketForecast = "Market shows signs of volatility. In uncertain times, it is good to have credit handy if you need extra funds!";
                break;

            default:
                homeVM.MarketForecast = "Apply for a credit card using our application!";
                break;
            }
            _logger.LogInformation("home Controller Index option end");

            return(View(homeVM));
        }
Example #8
0
        public static void AddCashEquity(PlotLine2D line_plot_2d, MarketResult market_result)
        {
            IReadOnlyList <double> time   = market_result.Ticks;
            IReadOnlyList <double> cash   = market_result.Cash;
            IReadOnlyList <double> equity = market_result.Equity;

            AddSignal(line_plot_2d, time, cash, COLOR_CASH);
            AddSignal(line_plot_2d, time, equity, COLOR_EQUITY);
        }
 public double Evaluate(ParameterSpaceGrid search_grid, ParameterSet parameter_set)
 {
     if (results.ContainsKey(parameter_set))
     {
         return(results[parameter_set]);
     }
     else
     {
         MarketManagerSimulation exchange = new MarketManagerSimulation(initial_cash, price_set);
         MarketResult            result   = exchange.Run(PolicyTemplate.Instance(parameter_set));
         return(result.EndCash);
     }
 }
        public SearchResult Search(string searchTerm, MarketResult market, int limit)
        {
            SearchResult toRet = new SearchResult();

            SearchRequest searchRequest = new SearchRequest();

            searchRequest.limit         = limit;
            searchRequest.searchTerm    = searchTerm;
            searchRequest.market        = new Market();
            searchRequest.market.market = market.Market;
            searchRequest.market.state  = market.State;

            var request = new RestRequest("search", DataFormat.Json);

            request.AddJsonBody(searchRequest);

            var response       = client.Post(request);
            var json           = response.Content;
            var searchResponse = JsonConvert.DeserializeObject <SearchResponse>(json);

            toRet.MgmtShown     = searchResponse.mgmtShowing;
            toRet.MgmtCount     = searchResponse.mgmtTotal;
            toRet.PropertyShown = searchResponse.propertiesShowing;
            toRet.PropertyCount = searchResponse.propertiesTotal;

            foreach (var mg in searchResponse.mgmts)
            {
                MgmtResult mr = new MgmtResult();
                mr.Name   = mg.name;
                mr.Market = mg.market;
                mr.State  = mg.state;
                toRet.Mgmts.Add(mr);
            }

            foreach (var p in searchResponse.properties)
            {
                PropertyResult pr = new PropertyResult();
                pr.Name = p.name;
                if (!String.IsNullOrWhiteSpace(p.formerName) && p.formerName != p.name)
                {
                    pr.Name += " (" + p.formerName + ")";
                }
                pr.Address = p.streetAddress;
                pr.City    = p.city;
                pr.Market  = p.market;
                pr.State   = p.state;
                toRet.Properties.Add(pr);
            }

            return(toRet);
        }
        public static void TestSpeed(double initial_cash, PriceSet price_set, int count)
        {
            List <PolicyJaapBands> policies = new List <PolicyJaapBands>();

            for (int i = 0; i < count; i++)
            {
                policies.Add(new PolicyJaapBands(300, 0.85, 50, 0.015, 150, 130));
            }
            MarketResult[] market_results = new MarketResult[policies.Count];
            Parallel.For(0, policies.Count, index =>
            {
                MarketManagerSimulation exchange = new MarketManagerSimulation(10000, price_set);
                market_results[index]            = exchange.Run(policies[index]);
            });
            Assert.AreEqual(10230.0, market_results[0].EndCash, 0.0000001);
        }
        public void DoExperiment()
        {
            MarketResult[] results = new MarketResult[policies.Count];
            Parallel.For(0, policies.Count, index =>
            {
                MarketManagerSimulation exchange = new MarketManagerSimulation(10000, price_set);
                results[index] = exchange.Run(policies[index]);
            });

            for (int index = 0; index < policies.Count; index++)
            {
                Console.WriteLine(policies[index].Title);
                Console.WriteLine(results[index].EndCash);
                Console.WriteLine("In: " + results[index].Market.ClosedOrders.Count);
            }
        }
Example #13
0
        public ActionResult Index(string query)
        {
            MarketResult      search = market.Search(query);
            SteamMarketParser parser = new SteamMarketParser();

            var results = parser.Parse(search.ResultsHtml).OrderBy(x => x.Name);

            SkinProcessor processor = new SkinProcessor(results);

            processor.AddTransform(new MetaDataSkinTransformer(cache));

            List <Skin> skins = processor.Run();

            string json = JsonConvert.SerializeObject(skins);

            return(Content(json, "application/json"));
        }
Example #14
0
        public static void AddTrades(PlotLine2D line_plot_2d, MarketResult market_result)
        {
            List <Tuple <double[], double[], Color> > series_list = new List <Tuple <double[], double[], Color> >();

            for (int orderIndex = 0; orderIndex < market_result.Market.ClosedOrders.Count; orderIndex++)
            {
                TradingOrder closed_order     = market_result.Market.ClosedOrders[orderIndex];
                double[]     open_close_time  = new double[] { closed_order.OpenDateTime.Ticks, closed_order.CloseDateTime.Ticks };
                double[]     open_close_price = new double[] { closed_order.OpenPrice, closed_order.ClosePrice };
                if (closed_order.OrderType == TradingOrderType.Long)
                {
                    series_list.Add(new Tuple <double[], double[], Color>(open_close_time, open_close_price, COLOR_LONG));
                }
                else
                {
                    series_list.Add(new Tuple <double[], double[], Color>(open_close_time, open_close_price, COLOR_SHORT));
                }
            }
            line_plot_2d.AddSeries(series_list);
        }
        public List <MarketResult> GetMarkets()
        {
            List <MarketResult> toRet = new List <MarketResult>();
            MarketResult        blanc = new MarketResult();

            toRet.Add(blanc);

            var request        = new RestRequest("markets", DataFormat.Json);
            var response       = client.Get(request);
            var json           = response.Content;
            var marketResponse = JsonConvert.DeserializeObject <MarketResponse>(json);

            foreach (Market m in marketResponse.markets)
            {
                MarketResult mr = new MarketResult();
                mr.Market = m.market;
                mr.State  = m.state;
                toRet.Add(mr);
            }

            return(toRet);
        }
Example #16
0
        public void DoExperiment()
        {
            PriceSet price_set = ToolsPrice.GetPriceSet(ToolsPrice.DefaultSymbolGBPUSD);

            List <IPolicy> policies        = new List <IPolicy>();
            double         long_threshold  = 10 * Math.Pow(10, -6);
            double         short_threshold = -10 * Math.Pow(10, -6);

            for (int index = 0; index < 1; index++)
            {
                policies.Add(new PolicyTemplateJaapBands().Instance());
            }

            MarketResult[] market_results = new MarketResult[policies.Count];

            Parallel.For(0, policies.Count, index =>
            {
                MarketManagerSimulation exchange = new MarketManagerSimulation(10000, price_set);
                market_results[index]            = exchange.Run(policies[index]);
            });

            List <Tuple <MarketResult, IPolicy> > accepted_policy = new List <Tuple <MarketResult, IPolicy> >();

            for (int index = 0; index < market_results.Length; index++)
            {
                //    if(market_results[index].Market.ClosedOrders.Count > 9 && market_results[index].EndCash > 10000)
                //    {
                accepted_policy.Add(new Tuple <MarketResult, IPolicy>(market_results[index], policies[index]));
                //    }
            }

            for (int index = 0; index < accepted_policy.Count; index++)
            {
                var xx = accepted_policy[index];
                Console.WriteLine(xx.Item1.EndCash + " in: " + xx.Item1.Market.ClosedOrders.Count);
                ToolsTradingPlotting.PlotMarketResult(ToolsTradingDataSet.GetPath() + "Trades" + index + ".png", xx.Item1);
            }
        }
Example #17
0
        public IActionResult Index()
        {
            MarketResult currentMarket = _marketForecaster.GetMarketPrediction();

            switch (currentMarket.MarketCondition)
            {
            case MarketCondition.StableDown:
                homeVM.MarketForecast = "Markets show signs to go down in stable state.";
                break;

            case MarketCondition.StableUp:
                homeVM.MarketForecast = "Markets show signs to go up in stable state.";
                break;

            case MarketCondition.Volatile:
                homeVM.MarketForecast = "Markets show signs of volatility.";
                break;

            default:
                homeVM.MarketForecast = "Apply for a credit card using our application!";
                break;
            }
            return(View(homeVM));
        }
Example #18
0
 private MarketResult LogError(MarketResult result)
 {
     Log.Info($"Market Error {Name}: {result.GetDescription()}");
     return(result);
 }
Example #19
0
 public static void AddBidAskTrades(PlotLine2D line_plot_2d, MarketResult market_result)
 {
     AddBidAsk(line_plot_2d, market_result.PriceSet);
     AddTrades(line_plot_2d, market_result);
 }