示例#1
0
        private bool CountSingeTimes(ConfigurationStatus.TimesCount pTimesInfo, ref List <ConfigurationStatus.TimesData> pTimesList, int pIndex, double pTimes)
        {
            ConfigurationStatus.TimesData item = new ConfigurationStatus.TimesData {
                Expect = pIndex.ToString(),
                Output = CommFunc.ChinaRound((pTimesInfo.Money * pTimesInfo.Number) * pTimes, 2)
            };
            item.TotalOutput = pTimesInfo.TotalOutput + item.Output;
            item.Times       = pTimes;
            item.Input       = CommFunc.ChinaRound(pTimesInfo.Mode * pTimes, 2);
            item.Gain        = CommFunc.ChinaRound(item.Input - item.TotalOutput, 2);
            item.GainRatio   = CommFunc.ChinaRound((item.Gain / item.TotalOutput) * 100.0, 2);
            item.TBCycle     = pTimesInfo.TBCycle;
            pTimesList.Add(item);
            for (int i = 2; i <= item.TBCycle; i++)
            {
                this.CountTBList(pTimesInfo, i, ref pTimesList);
            }
            ConfigurationStatus.TimesData data2 = pTimesList[pTimesList.Count - 1];
            double getTBGain = -1.0;

            if ((pTimesInfo.Type == ConfigurationStatus.TimesType.GainFix) || (pTimesInfo.Type == ConfigurationStatus.TimesType.Sum))
            {
                getTBGain = pTimesInfo.GetTBGain;
                return(data2.Gain >= getTBGain);
            }
            if (pTimesInfo.Type == ConfigurationStatus.TimesType.GainRatio)
            {
                getTBGain = pTimesInfo.GetTBGain;
                return(data2.GainRatio >= getTBGain);
            }
            return(false);
        }
示例#2
0
 private void Btn_BTCount_Click(object sender, EventArgs e)
 {
     ConfigurationStatus.TimesCount pTimesInfo = null;
     if (this.GetTimesCount(ref pTimesInfo))
     {
         this.CountTimesList(pTimesInfo);
         this.RefreshBTDataList();
     }
 }
示例#3
0
 private ConfigurationStatus.TimesData GetOneTimes(ConfigurationStatus.TimesCount pTimesInfo)
 {
     ConfigurationStatus.TimesData data = new ConfigurationStatus.TimesData {
         Expect = "1",
         Times  = 1.0
     };
     data.TotalOutput = data.Output = pTimesInfo.Money * pTimesInfo.Number;
     data.Input       = pTimesInfo.Mode;
     data.Gain        = data.Input - data.TotalOutput;
     data.GainRatio   = (data.Gain / data.TotalOutput) * 100.0;
     return(data);
 }
示例#4
0
 private void CountTimesList(ConfigurationStatus.TimesCount pTimeInfo)
 {
     this.TimesList.Clear();
     for (int i = 1; i <= pTimeInfo.Cycle; i++)
     {
         if (this.CountSingeTimes(pTimeInfo, ref this.TimesList, i) == -1.0)
         {
             CommFunc.PublicMessageAll("该计划不适合投注!", true, MessageBoxIcon.Asterisk, "");
             break;
         }
     }
 }
示例#5
0
        private double CountSingeTimes(ConfigurationStatus.TimesCount pTimesInfo, ref List <ConfigurationStatus.TimesData> pTimesList, int pIndex)
        {
            double pNum      = -1.0;
            double getTBGain = -1.0;

            if ((pTimesInfo.Type == ConfigurationStatus.TimesType.GainFix) || (pTimesInfo.Type == ConfigurationStatus.TimesType.Sum))
            {
                getTBGain = pTimesInfo.GetTBGain;
            }
            else if (pTimesInfo.Type == ConfigurationStatus.TimesType.GainRatio)
            {
                getTBGain = pTimesInfo.GetTBGain / 100.0;
            }
            double x    = pTimesInfo.Money * pTimesInfo.Number;
            double num4 = (getTBGain + pTimesInfo.TotalOutput) * Math.Pow(x, (double)(pTimesInfo.TBCycle - 1));
            double num5 = Math.Pow(pTimesInfo.Mode, (double)pTimesInfo.TBCycle) - Math.Pow(x, (double)pTimesInfo.TBCycle);

            if (pTimesInfo.Type == ConfigurationStatus.TimesType.GainRatio)
            {
                num4 = ((getTBGain + 1.0) * pTimesInfo.TotalOutput) * Math.Pow(x, (double)(pTimesInfo.TBCycle - 1));
                num5 = (Math.Pow(pTimesInfo.Mode, (double)pTimesInfo.TBCycle) - Math.Pow(x, (double)pTimesInfo.TBCycle)) - Math.Pow(x, (double)pTimesInfo.TBCycle);
            }
            pNum = num4 / num5;
            pNum = CommFunc.ChinaRound(pNum, 2);
            if (pNum < 0.0)
            {
                return(-1.0);
            }
            if (pNum > 10000000.0)
            {
                return(-1.0);
            }
            if (pNum < pTimesInfo.Start)
            {
                pNum = pTimesInfo.Start;
            }
            while (!this.CountSingeTimes(pTimesInfo, ref pTimesList, pIndex, pNum))
            {
                pNum += 0.01;
                pNum  = CommFunc.ChinaRound(pNum, 2);
                for (int i = 0; i < pTimesInfo.TBCycle; i++)
                {
                    pTimesList.RemoveAt(pTimesList.Count - 1);
                }
            }
            ConfigurationStatus.TimesData data = pTimesList[pTimesList.Count - 1];
            pTimesInfo.TotalOutput = data.TotalOutput;
            if (pTimesInfo.Type == ConfigurationStatus.TimesType.Sum)
            {
                pTimesInfo.SumBegin = data.Gain;
            }
            return(pNum);
        }
示例#6
0
 private int CountSingeTimes(ConfigurationStatus.TimesCount pTimesInfo, int pIndex, ConfigurationStatus.TimesData pTimes = null)
 {
     for (int i = 1; i < 0x989680; i++)
     {
         double num3 = (pTimesInfo.Money * pTimesInfo.Number) * i;
         double num4 = pTimesInfo.TotalOutput + num3;
         double num5 = pTimesInfo.Mode * i;
         double num6 = num5 - num4;
         double num7 = (num6 / num4) * 100.0;
         if (pTimesInfo.Type == ConfigurationStatus.TimesType.GainRatio)
         {
             if (num7 < pTimesInfo.GainRatio)
             {
                 continue;
             }
         }
         else if (pTimesInfo.Type == ConfigurationStatus.TimesType.GainFix)
         {
             if (num6 < pTimesInfo.GainFix)
             {
                 continue;
             }
         }
         else if (pTimesInfo.Type == ConfigurationStatus.TimesType.Sum)
         {
             if (num6 < (pTimesInfo.SumBegin + pTimesInfo.SumStep))
             {
                 continue;
             }
             pTimesInfo.SumBegin = num6;
         }
         else if ((pTimesInfo.Type == ConfigurationStatus.TimesType.Free) && (pTimesInfo.FreeList[pIndex - 1] != i))
         {
             continue;
         }
         if (pTimes != null)
         {
             pTimes.Times       = i;
             pTimes.Output      = num3;
             pTimes.TotalOutput = num4;
             pTimes.Input       = num5;
             pTimes.Gain        = num6;
             pTimes.GainRatio   = num7;
         }
         pTimesInfo.TotalOutput = num4;
         return(i);
     }
     return(-1);
 }
示例#7
0
        private void CountTBList(ConfigurationStatus.TimesCount pTimesInfo, int pIndex, ref List <ConfigurationStatus.TimesData> pTimesList)
        {
            ConfigurationStatus.TimesData item = new ConfigurationStatus.TimesData {
                Expect = "",
                Output = pTimesList[pTimesList.Count - 1].Input
            };
            double num = CommFunc.ChinaRound(item.Output / (pTimesInfo.Money * pTimesInfo.Number), 2);

            item.TotalOutput = pTimesList[pTimesList.Count - 1].TotalOutput;
            item.Times       = num;
            item.Input       = CommFunc.ChinaRound(pTimesInfo.Mode * num, 2);
            item.Gain        = CommFunc.ChinaRound(item.Input - item.TotalOutput, 2);
            item.GainRatio   = CommFunc.ChinaRound((item.Gain / item.TotalOutput) * 100.0, 2);
            item.TBCycle     = pTimesInfo.TBCycle;
            pTimesList.Add(item);
        }
示例#8
0
 private void CountTimesList(ConfigurationStatus.TimesCount pTimeInfo)
 {
     this.TimesList.Clear();
     for (int i = 1; i <= pTimeInfo.Cycle; i++)
     {
         ConfigurationStatus.TimesData pTimes = new ConfigurationStatus.TimesData {
             Expect = i.ToString()
         };
         if (this.CountSingeTimes(pTimeInfo, i, pTimes) == -1)
         {
             CommFunc.PublicMessageAll("该计划不适合投注!", true, MessageBoxIcon.Asterisk, "");
             if (this.TimesList.Count == 0)
             {
                 this.TimesList.Add(this.GetOneTimes(pTimeInfo));
             }
             break;
         }
         this.TimesList.Add(pTimes);
     }
 }
示例#9
0
        private bool GetTimesCount(ref ConfigurationStatus.TimesCount pTimesInfo)
        {
            pTimesInfo       = new ConfigurationStatus.TimesCount();
            pTimesInfo.Cycle = Convert.ToInt32(this.Cbb_Cycle.Text);
            if (CommFunc.CheckTextBoxIsNull(this.Txt_Prize, this.Lbl_Prize.Text))
            {
                return(false);
            }
            int selectedIndex = this.Cbb_Unit.SelectedIndex;

            ConfigurationStatus.SCUnitType pUnitType = (ConfigurationStatus.SCUnitType)selectedIndex;
            pTimesInfo.Money = ((AutoBetsWindow)Program.MainApp).GetBetMoney(pUnitType);
            pTimesInfo.Mode  = Convert.ToDouble(this.Txt_Prize.Text) / Math.Pow(10.0, (double)selectedIndex);
            if (CommFunc.CheckTextBoxIsNull(this.Txt_Number, this.Lbl_Number.Text))
            {
                return(false);
            }
            pTimesInfo.Number = this.GetNumber();
            RadioButton timesType = this.GetTimesType();

            if (timesType == this.Rdb_Times1)
            {
                pTimesInfo.GainRatio  = Convert.ToDouble(this.Cbb_Times1.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.GainRatio;
                pTimesInfo.TypeString = "收益率";
            }
            else if (timesType == this.Rdb_Times2)
            {
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times2, this.Rdb_Times2.Text.Replace(":", "")))
                {
                    return(false);
                }
                pTimesInfo.GainFix    = Convert.ToDouble(this.Txt_Times2.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.GainFix;
                pTimesInfo.TypeString = "固定利润";
            }
            else if (timesType == this.Rdb_Times3)
            {
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times3_1, this.Lbl_Times3_1.Text))
                {
                    return(false);
                }
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times3_2, this.Lbl_Times3_2.Text))
                {
                    return(false);
                }
                pTimesInfo.SumBegin   = Convert.ToDouble(this.Txt_Times3_1.Text);
                pTimesInfo.SumStep    = Convert.ToDouble(this.Txt_Times3_2.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.Sum;
                pTimesInfo.TypeString = "累加利润";
            }
            else if (timesType == this.Rdb_Times4)
            {
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times4, this.Rdb_Times4.Text.Replace(":", "")))
                {
                    return(false);
                }
                List <string> list = CommFunc.SplitString(this.Txt_Times4.Text, ",", -1);
                foreach (string str in list)
                {
                    if (str != "")
                    {
                        pTimesInfo.FreeList.Add(Convert.ToInt32(str));
                    }
                }
                if (pTimesInfo.FreeList.Count != pTimesInfo.Cycle)
                {
                    CommFunc.PublicMessageAll("倍数的个数和周期不一致!", true, MessageBoxIcon.Asterisk, "");
                    this.Txt_Times4.Focus();
                    return(false);
                }
                pTimesInfo.Type       = ConfigurationStatus.TimesType.Free;
                pTimesInfo.TypeString = "自由倍数";
            }
            return(true);
        }
示例#10
0
        private bool GetTimesCount(ref ConfigurationStatus.TimesCount pTimesInfo)
        {
            pTimesInfo = new ConfigurationStatus.TimesCount();
            int num = Convert.ToInt32(this.Cbb_Cycle.Text);

            pTimesInfo.TBCycle = Convert.ToInt32(this.Cbb_TBCycle.Text);
            int num2 = num / pTimesInfo.TBCycle;

            if ((num % pTimesInfo.TBCycle) != 0)
            {
                num2++;
            }
            pTimesInfo.Cycle = num2;
            pTimesInfo.Start = Convert.ToDouble(this.Txt_Start.Text);
            pTimesInfo.Money = this.GetBetMoney();
            if (CommFunc.CheckTextBoxIsNull(this.Txt_Prize, this.Lbl_Prize.Text))
            {
                return(false);
            }
            int selectedIndex = this.Cbb_Unit.SelectedIndex;

            pTimesInfo.Mode = Convert.ToDouble(this.Txt_Prize.Text) / Math.Pow(10.0, (double)selectedIndex);
            if (CommFunc.CheckTextBoxIsNull(this.Txt_Number, this.Lbl_Number.Text))
            {
                return(false);
            }
            pTimesInfo.Number = this.GetNumber();
            RadioButton timesType = this.GetTimesType();

            if (timesType == this.Rdb_Times1)
            {
                pTimesInfo.GainRatio  = Convert.ToDouble(this.Cbb_Times1.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.GainRatio;
                pTimesInfo.TypeString = "收益率";
            }
            else if (timesType == this.Rdb_Times2)
            {
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times2, this.Rdb_Times2.Text.Replace(":", "")))
                {
                    return(false);
                }
                pTimesInfo.GainFix    = Convert.ToDouble(this.Txt_Times2.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.GainFix;
                pTimesInfo.TypeString = "固定利润";
            }
            else if (timesType == this.Rdb_Times3)
            {
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times3_1, this.Lbl_Times3_1.Text))
                {
                    return(false);
                }
                if (CommFunc.CheckTextBoxIsNull(this.Txt_Times3_2, this.Lbl_Times3_2.Text))
                {
                    return(false);
                }
                pTimesInfo.SumBegin   = Convert.ToDouble(this.Txt_Times3_1.Text);
                pTimesInfo.SumStep    = Convert.ToDouble(this.Txt_Times3_2.Text);
                pTimesInfo.Type       = ConfigurationStatus.TimesType.Sum;
                pTimesInfo.TypeString = "累加利润";
            }
            return(true);
        }