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); }
private void Btn_BTCount_Click(object sender, EventArgs e) { ConfigurationStatus.TimesCount pTimesInfo = null; if (this.GetTimesCount(ref pTimesInfo)) { this.CountTimesList(pTimesInfo); this.RefreshBTDataList(); } }
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); }
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; } } }
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); }
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); }
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); }
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); } }
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); }
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); }