Beispiel #1
0
        private void setDefaultSetting()
        {
            MacroSettingData setting = ((Main)Owner).macro.setting;

            text_yield.Text = setting.yield.ToString();
            text_krw.Text   = setting.krw.ToString();
            text_time.Text  = setting.time.ToString();
            if (setting.week_from > -1500d)
            {
                text_week_from.Text = setting.week_from.ToString();
            }
            if (setting.week_to > -1500d)
            {
                text_week_to.Text = setting.week_to.ToString();
            }
            if (setting.day_from > -1500d)
            {
                text_day_from.Text = setting.day_from.ToString();
            }
            if (setting.day_to > -1500d)
            {
                text_day_to.Text = setting.day_to.ToString();
            }
            if (setting.hour4_from > -1500d)
            {
                text_hour4_from.Text = setting.hour4_from.ToString();
            }
            if (setting.hour4_to > -1500d)
            {
                text_hour4_to.Text = setting.hour4_to.ToString();
            }
            if (setting.hour1_from > -1500d)
            {
                text_hour1_from.Text = setting.hour1_from.ToString();
            }
            if (setting.hour1_to > -1500d)
            {
                text_hour1_to.Text = setting.hour1_to.ToString();
            }
            if (setting.min30_from > -1500d)
            {
                text_min30_from.Text = setting.min30_from.ToString();
            }
            if (setting.min30_to > -1500d)
            {
                text_min30_to.Text = setting.min30_to.ToString();
            }
        }
Beispiel #2
0
        private void btn_save_Click(object sender, EventArgs e)
        {
            if (text_yield.Text == "" || text_krw.Text == "" || text_time.Text == "")
            {
                MessageBox.Show("Check Parameters.");
                return;
            }

            MacroSettingData setting = new MacroSettingData();

            setting.pauseBuy = this.setting.pauseBuy;

            if (!int.TryParse(text_top.Text, out setting.top))
            {
                if (text_top.Text == "")
                {
                    setting.top = 70;
                }
                else
                {
                    MessageBox.Show("Top value is not number.");
                    return;
                }
            }
            if (!double.TryParse(text_yield.Text, out setting.yield))
            {
                MessageBox.Show("Yield value is not number.");
                return;
            }
            if (!double.TryParse(text_krw.Text, out setting.krw))
            {
                MessageBox.Show("KRW value is not number.");
                return;
            }
            if (!double.TryParse(text_time.Text, out setting.time))
            {
                MessageBox.Show("Time value is not number.");
                return;
            }
            if (!double.TryParse(text_limit.Text, out setting.limit))
            {
                if (text_limit.Text == "")
                {
                    setting.limit = 0;
                }
                else
                {
                    MessageBox.Show("Limit value is not number.");
                    return;
                }
            }
            if (!double.TryParse(text_lostCut.Text, out setting.lostCut))
            {
                if (text_lostCut.Text == "")
                {
                    setting.lostCut = 0;
                }
                else
                {
                    MessageBox.Show("Lost Cut value is not number.");
                    return;
                }
            }

            setting.week_bb  = check_week_bb.Checked;
            setting.day_bb   = check_day_bb.Checked;
            setting.hour4_bb = check_hour4_bb.Checked;
            setting.hour1_bb = check_hour1_bb.Checked;
            setting.min30_bb = check_min30_bb.Checked;

            setting.week_tl  = check_week_tl.Checked;
            setting.day_tl   = check_day_tl.Checked;
            setting.hour4_tl = check_hour4_tl.Checked;
            setting.hour1_tl = check_hour1_tl.Checked;
            setting.min30_tl = check_min30_tl.Checked;

            if (setting.top < 0 || setting.yield < 0 || setting.krw < 0 ||
                setting.time < 0 || setting.limit < 0 || setting.lostCut < 0)
            {
                MessageBox.Show("Required setting values can't be negative.");
                return;
            }
            if (!(setting.week_bb || setting.day_bb || setting.hour4_bb || setting.hour1_bb || setting.min30_bb ||
                  setting.week_tl || setting.day_tl || setting.hour4_tl || setting.hour1_tl || setting.min30_tl))
            {
                MessageBox.Show("At least one of optional setting values must be checked.");
                return;
            }

            lock (((Main)Owner).lock_macro)
                ((Main)Owner).macro.saveMacroSetting(setting);

            setDefaultSetting();
            MessageBox.Show("Save success.");
        }
Beispiel #3
0
        private void executeLoadData()
        {
            while (!AllStop)
            {
                lock (lock_load)
                {
                    switch (type)
                    {
                    case 0:
                        lock (((Main)Owner).lock_tradeHistory)
                            pendingData = ((Main)Owner).tradeHistory.pendingData.Copy();
                        break;

                    case 1:
                        if (isNeedUpdateHistory)
                        {
                            isNeedUpdateHistory = false;
                            int ret = ((Main)Owner).tradeHistory.updateHistoryData(text_historyCoinName.Text.ToUpper(), page);
                            if (ret < 0)
                            {
                                MessageBox.Show("Invalid coin name.");
                                return;
                            }
                            lock (((Main)Owner).lock_tradeHistory)
                                historyData = ((Main)Owner).tradeHistory.historyData.Copy();
                            isNeedBindHistory = true;
                        }
                        break;

                    case 2:
                        lock (((Main)Owner).lock_macro)
                        {
                            macroSetting = ((Main)Owner).macro.setting;
                            macroState   = ((Main)Owner).macro.state.Copy();
                        }
                        macroPrintSwap.Rows.Clear();
                        for (int i = 0; i < macroState.Tables.Count; i++)
                        {
                            string tempCoinName = macroState.Tables[i].TableName;
                            for (int j = 0; j < macroState.Tables[i].Rows.Count; j++)
                            {
                                DataRow dataRow = macroPrintSwap.NewRow();
                                dataRow["coinName"] = tempCoinName;
                                dataRow["date"]     = macroState.Tables[tempCoinName].Rows[j]["date"];
                                dataRow["unit"]     = macroState.Tables[tempCoinName].Rows[j]["unit"];
                                dataRow["price"]    = macroState.Tables[tempCoinName].Rows[j]["price"];
                                dataRow["target"]   = (double)macroState.Tables[tempCoinName].Rows[j]["price"]
                                                      * (100d + (double)macroSetting.yield) / 100d;
                                macroPrintSwap.Rows.Add(dataRow);
                            }
                        }
                        isNeedBindMacro = true;
                        break;
                    }
                }

                for (int i = 0; i < 10; i++)
                {
                    if (AllStop)
                    {
                        break;
                    }
                    Thread.Sleep(100);
                }
            }
        }
Beispiel #4
0
        private void btn_save_Click(object sender, EventArgs e)
        {
            if (text_yield.Text != "" && text_krw.Text != "" && text_time.Text != "")
            {
                MacroSettingData setting = new MacroSettingData();

                if (!double.TryParse(text_yield.Text, out setting.yield) ||
                    !double.TryParse(text_krw.Text, out setting.krw) ||
                    !double.TryParse(text_time.Text, out setting.time))
                {
                    MessageBox.Show("One of yield, krw and time value is not number.");
                    return;
                }

                if (text_week_from.Text == "" && text_day_from.Text == "" && text_hour4_from.Text == "" &&
                    text_hour1_from.Text == "" && text_min30_from.Text == "")
                {
                    MessageBox.Show("At least one of rate parameter need.");
                    return;
                }

                if (text_week_from.Text != "")
                {
                    if (!double.TryParse(text_week_from.Text, out setting.week_from))
                    {
                        MessageBox.Show("Week rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.week_from = -2000;
                }
                if (text_week_to.Text != "")
                {
                    if (!double.TryParse(text_week_to.Text, out setting.week_to))
                    {
                        MessageBox.Show("Week rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.week_to = -2000;
                }

                if (text_day_from.Text != "")
                {
                    if (!double.TryParse(text_day_from.Text, out setting.day_from))
                    {
                        MessageBox.Show("Day rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.day_from = -2000;
                }
                if (text_day_to.Text != "")
                {
                    if (!double.TryParse(text_day_to.Text, out setting.day_to))
                    {
                        MessageBox.Show("Day rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.day_to = -2000;
                }

                if (text_hour4_from.Text != "")
                {
                    if (!double.TryParse(text_hour4_from.Text, out setting.hour4_from))
                    {
                        MessageBox.Show("4 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.hour4_from = -2000;
                }
                if (text_hour4_to.Text != "")
                {
                    if (!double.TryParse(text_hour4_to.Text, out setting.hour4_to))
                    {
                        MessageBox.Show("4 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.hour4_to = -2000;
                }

                if (text_hour1_from.Text != "")
                {
                    if (!double.TryParse(text_hour1_from.Text, out setting.hour1_from))
                    {
                        MessageBox.Show("1 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.hour1_from = -2000;
                }
                if (text_hour1_to.Text != "")
                {
                    if (!double.TryParse(text_hour1_to.Text, out setting.hour1_to))
                    {
                        MessageBox.Show("1 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.hour1_to = -2000;
                }

                if (text_min30_from.Text != "")
                {
                    if (!double.TryParse(text_min30_from.Text, out setting.min30_from))
                    {
                        MessageBox.Show("'from' 30 minute rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.min30_from = -2000;
                }
                if (text_min30_to.Text != "")
                {
                    if (!double.TryParse(text_min30_to.Text, out setting.min30_to))
                    {
                        MessageBox.Show("'to' 30 minute rate is not number.");
                        return;
                    }
                }
                else
                {
                    setting.min30_to = -2000;
                }

                lock (((Main)Owner).lock_macro)
                    ((Main)Owner).macro.saveMacroSetting(setting);

                setDefaultSetting();
                MessageBox.Show("Save success.");
            }
            else
            {
                MessageBox.Show("Check Parameters.");
            }
        }
Beispiel #5
0
        private void btn_add_Click(object sender, EventArgs e)
        {
            if (isSelectedFromList && !isEditMode)
            {
                text_yield.ReadOnly       = false;
                text_yield.BackColor      = Color.White;
                text_krw.ReadOnly         = false;
                text_krw.BackColor        = Color.White;
                text_time.ReadOnly        = false;
                text_time.BackColor       = Color.White;
                text_week_from.ReadOnly   = false;
                text_week_from.BackColor  = Color.White;
                text_week_to.ReadOnly     = false;
                text_week_to.BackColor    = Color.White;
                text_day_from.ReadOnly    = false;
                text_day_from.BackColor   = Color.White;
                text_day_to.ReadOnly      = false;
                text_day_to.BackColor     = Color.White;
                text_hour4_from.ReadOnly  = false;
                text_hour4_from.BackColor = Color.White;
                text_hour4_to.ReadOnly    = false;
                text_hour4_to.BackColor   = Color.White;
                text_hour1_from.ReadOnly  = false;
                text_hour1_from.BackColor = Color.White;
                text_hour1_to.ReadOnly    = false;
                text_hour1_to.BackColor   = Color.White;
                text_min30_from.ReadOnly  = false;
                text_min30_from.BackColor = Color.White;
                text_min30_to.ReadOnly    = false;
                text_min30_to.BackColor   = Color.White;

                btn_add.Text = "Save";
                isEditMode   = true;
            }
            else if ((text_yield.Text != "" && text_krw.Text != "" && text_time.Text != "") || isEditMode)
            {
                MacroSettingData singleMacroSetting = new MacroSettingData();
                singleMacroSetting.coinName = combo_coinName.Text;

                if (!double.TryParse(text_yield.Text, out singleMacroSetting.yield) ||
                    !double.TryParse(text_krw.Text, out singleMacroSetting.krw) ||
                    !double.TryParse(text_time.Text, out singleMacroSetting.time))
                {
                    MessageBox.Show("One of yield, krw and time value is not number.");
                    return;
                }

                if (text_week_from.Text == "" && text_day_from.Text == "" && text_hour4_from.Text == "" &&
                    text_hour1_from.Text == "" && text_min30_from.Text == "")
                {
                    MessageBox.Show("At least one of rate parameter need.");
                    return;
                }

                if (text_week_from.Text != "")
                {
                    if (!double.TryParse(text_week_from.Text, out singleMacroSetting.week_from))
                    {
                        MessageBox.Show("Week rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.week_from = -2000;
                }
                if (text_week_to.Text != "")
                {
                    if (!double.TryParse(text_week_to.Text, out singleMacroSetting.week_to))
                    {
                        MessageBox.Show("Week rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.week_to = -2000;
                }

                if (text_day_from.Text != "")
                {
                    if (!double.TryParse(text_day_from.Text, out singleMacroSetting.day_from))
                    {
                        MessageBox.Show("Day rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.day_from = -2000;
                }
                if (text_day_to.Text != "")
                {
                    if (!double.TryParse(text_day_to.Text, out singleMacroSetting.day_to))
                    {
                        MessageBox.Show("Day rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.day_to = -2000;
                }

                if (text_hour4_from.Text != "")
                {
                    if (!double.TryParse(text_hour4_from.Text, out singleMacroSetting.hour4_from))
                    {
                        MessageBox.Show("4 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.hour4_from = -2000;
                }
                if (text_hour4_to.Text != "")
                {
                    if (!double.TryParse(text_hour4_to.Text, out singleMacroSetting.hour4_to))
                    {
                        MessageBox.Show("4 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.hour4_to = -2000;
                }

                if (text_hour1_from.Text != "")
                {
                    if (!double.TryParse(text_hour1_from.Text, out singleMacroSetting.hour1_from))
                    {
                        MessageBox.Show("1 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.hour1_from = -2000;
                }
                if (text_hour1_to.Text != "")
                {
                    if (!double.TryParse(text_hour1_to.Text, out singleMacroSetting.hour1_to))
                    {
                        MessageBox.Show("1 hour rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.hour1_to = -2000;
                }

                if (text_min30_from.Text != "")
                {
                    if (!double.TryParse(text_min30_from.Text, out singleMacroSetting.min30_from))
                    {
                        MessageBox.Show("30 minute rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.min30_from = -2000;
                }
                if (text_min30_to.Text != "")
                {
                    if (!double.TryParse(text_min30_to.Text, out singleMacroSetting.min30_to))
                    {
                        MessageBox.Show("30 minute rate is not number.");
                        return;
                    }
                }
                else
                {
                    singleMacroSetting.min30_to = -2000;
                }

                int ret = 0;
                lock (((Main)Owner).lock_macro)
                    ret = ((Main)Owner).macro.addMacroSetting(singleMacroSetting, isEditMode);
                if (ret == 0)
                {
                    list_macroList.Items.Add(combo_coinName.Text);
                    MessageBox.Show("Success to add");
                }
                else if (isEditMode && ret > 0)
                {
                    reLoadMacroSetting();
                    MessageBox.Show("Success to Edit");
                }
                else
                {
                    MessageBox.Show("One coin can not have multiple macro setting.");
                    return;
                }

                list_macroList.SelectedIndex = -1;
                setDefaultSetting();
            }
            else
            {
                MessageBox.Show("Check Parameters.");
            }
        }