Exemplo n.º 1
0
        static void MainX()
        {
            string result = RunProfile.Execute("2014 Proleague Overall.xml");

            LiquipediaClientEx lpc = new LiquipediaClientEx();

            lpc.Login("", "");
            string token = lpc.GetEditToken();

            lpc.EditPage("User:Xpaperclip/Carno/Proleague", result, "test", token);
            return;

            DataStore data = new DataStore();

            DataStore.LoadRewriter("playerpka.dict", data.IdRewriter);
            DataStore.LoadRewriter("mapakas.dict", data.MapRewriter);

            data.Accumulate("http://wiki.teamliquid.net/starcraft2/2013_Global_StarCraft_II_Team_League_Season_2/Round_1");

            PageGenerator pagegen = PageGenerator.FromXml(System.Xml.Linq.XDocument.Load("pages/Team League (All-Kill Format).xml"));
            string        emit    = pagegen.Emit(data);

            // push update

            UI.ShowDialog(new UIDocument("emit", emit),
                          new UIDocument("html", LiquipediaClientEx.RequestParse(emit)),
                          new UIDocument("xml", pagegen.Save().ToString()));
        }
Exemplo n.º 2
0
 private void runProfileButton_Click(object sender, EventArgs e)
 {
     using (var dlg = new OpenFileDialog())
     {
         dlg.Filter = "Carno Profiles (*.xml)|*.xml";
         if (dlg.ShowDialog() == DialogResult.OK)
         {
             Cursor.Current = Cursors.WaitCursor;
             string result = RunProfile.Execute(dlg.FileName);
             UI.ShowDialog(new UIDocument("Statistics", result));
             Cursor.Current = Cursors.Default;
         }
     }
 }
Exemplo n.º 3
0
        protected override void RunTrial(int trialNumber, RunProfile profile)
        {
            Trial trial = new Trial();

            double[] balances = new double[profile.TrialLength];

            // Populate trial data
            double interestRate = profile.SeedDistribution.NextDouble() * 0.01;

            balances[0] = (profile.InitialAmount + profile.ContributionAmount) * (1 + interestRate);

            // Contribution period
            for (var i = 1; i < profile.TrialLength; i++)
            {
                interestRate += profile.StepDistribution.NextDouble() * 0.01;

                balances[i] = balances[i - 1] > 0 ?
                              (i < profile.ContributionLength ?
                               // Contribution period
                               (balances[i - 1] + profile.ContributionAmount) * (1 + interestRate) :
                               // Withdrawal period
                               (balances[i - 1] - profile.WithdrawalAmount) * (1 + interestRate))
                    : 0;

                balances[i] = balances[i] > 0 ? balances[i] : 0;

                if (i == profile.ContributionLength - 1)
                {
                    trial.Peak = balances[i];
                }

                if (balances[i] == 0)
                {
                    break;
                }
            }

            trial.Balances    = balances;
            trial.ReturnRates = null;
            trial.Final       = balances[profile.TrialLength - 1];

            // Add data to return value
            mutex.WaitOne();
            trials[trialNumber] = trial;
            mutex.ReleaseMutex();
        }
Exemplo n.º 4
0
        private DesiredCapabilities PopulateCapabilities()
        {
            NameValueCollection capabilities    = ConfigurationManager.GetSection("capabilities/" + RunProfile.ToString().ToLower()) as NameValueCollection;
            NameValueCollection browserSettings = ConfigurationManager.GetSection("environments/" + BrowserName.ToLower()) as NameValueCollection;
            DesiredCapabilities capability      = new DesiredCapabilities();

            foreach (string key in capabilities.AllKeys)
            {
                capability.SetCapability(key, capabilities[key].FormatTokens(ScenarioContext));
            }

            foreach (string key in browserSettings.AllKeys)
            {
                capability.SetCapability(key, browserSettings[key]);
            }

            return(capability);
        }
Exemplo n.º 5
0
        protected override void RunTrial(int trialNumber, RunProfile profile)
        {
            Trial trial         = new Trial();
            var   addAmt        = profile.ContributionAmount;
            var   withdrawAmt   = profile.WithdrawalAmount;
            var   trialLength   = profile.TrialLength;
            var   contribLength = profile.ContributionLength;
            var   seed          = profile.SeedDistribution.NextDouble();
            var   stepSampler   = profile.StepDistribution;

            double[] balances    = new double[trialLength];
            double[] bondRates   = new double[trialLength];
            double[] returnRates = new double[trialLength - 1];

            // Populate trial data
            double interestRate = seed * 0.01;

            bondRates[0] = interestRate;
            balances[0]  = (profile.InitialAmount + addAmt) * (1 + interestRate);

            // Contribution period
            for (var i = 1; i < trialLength; i++)
            {
                interestRate += stepSampler.NextDouble() * 0.01;
                interestRate  = interestRate < 0.0003 ? 0.0003 : interestRate;
                bondRates[i]  = interestRate;

                var prevBalance = balances[i - 1];

                var balance = prevBalance > 0 ?
                              (i < contribLength ?
                               // Contribution period
                               (prevBalance + addAmt) * (1 + interestRate) :
                               // Withdrawal period
                               (prevBalance - withdrawAmt) * (1 + interestRate))
                    : 0;

                balances[i] = balance > 0 ? balance : 0;

                returnRates[i - 1] = interestRate;

                if (i == contribLength - 1)
                {
                    trial.Peak = balance;
                }

                if (balance == 0)
                {
                    break;
                }
            }

            trial.Balances    = balances;
            trial.ReturnRates = returnRates;
            trial.Final       = balances[trialLength - 1];

            // Add data to return value
            mutex.WaitOne();
            trials[trialNumber] = trial;
            mutex.ReleaseMutex();
        }