diff --git a/Million Prototype/Form1.Designer.cs b/Million Prototype/Form1.Designer.cs
index aab7c5b..e178a68 100644
--- a/Million Prototype/Form1.Designer.cs
+++ b/Million Prototype/Form1.Designer.cs
@@ -34,6 +34,9 @@
this.button2 = new System.Windows.Forms.Button();
this.button3 = new System.Windows.Forms.Button();
this.button4 = new System.Windows.Forms.Button();
+ this.textBoxAskInput = new System.Windows.Forms.TextBox();
+ this.textBoxAskOutput = new System.Windows.Forms.TextBox();
+ this.button5 = new System.Windows.Forms.Button();
this.SuspendLayout();
//
// label1
@@ -78,7 +81,7 @@
//
// button3
//
- this.button3.Location = new System.Drawing.Point(47, 203);
+ this.button3.Location = new System.Drawing.Point(47, 128);
this.button3.Name = "button3";
this.button3.Size = new System.Drawing.Size(75, 23);
this.button3.TabIndex = 4;
@@ -88,7 +91,7 @@
//
// button4
//
- this.button4.Location = new System.Drawing.Point(47, 299);
+ this.button4.Location = new System.Drawing.Point(47, 157);
this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(75, 23);
this.button4.TabIndex = 5;
@@ -96,11 +99,38 @@
this.button4.UseVisualStyleBackColor = true;
this.button4.Click += new System.EventHandler(this.button4_Click);
//
+ // textBoxAskInput
+ //
+ this.textBoxAskInput.Location = new System.Drawing.Point(608, 18);
+ this.textBoxAskInput.Name = "textBoxAskInput";
+ this.textBoxAskInput.Size = new System.Drawing.Size(100, 21);
+ this.textBoxAskInput.TabIndex = 6;
+ //
+ // textBoxAskOutput
+ //
+ this.textBoxAskOutput.Location = new System.Drawing.Point(714, 18);
+ this.textBoxAskOutput.Name = "textBoxAskOutput";
+ this.textBoxAskOutput.Size = new System.Drawing.Size(100, 21);
+ this.textBoxAskOutput.TabIndex = 7;
+ //
+ // button5
+ //
+ this.button5.Location = new System.Drawing.Point(608, 45);
+ this.button5.Name = "button5";
+ this.button5.Size = new System.Drawing.Size(75, 23);
+ this.button5.TabIndex = 8;
+ this.button5.Text = "호가값";
+ this.button5.UseVisualStyleBackColor = true;
+ this.button5.Click += new System.EventHandler(this.button5_Click);
+ //
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(7F, 12F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1415, 703);
+ this.Controls.Add(this.button5);
+ this.Controls.Add(this.textBoxAskOutput);
+ this.Controls.Add(this.textBoxAskInput);
this.Controls.Add(this.button4);
this.Controls.Add(this.button3);
this.Controls.Add(this.button2);
@@ -122,6 +152,9 @@
private System.Windows.Forms.Button button2;
private System.Windows.Forms.Button button3;
private System.Windows.Forms.Button button4;
+ private System.Windows.Forms.TextBox textBoxAskInput;
+ private System.Windows.Forms.TextBox textBoxAskOutput;
+ private System.Windows.Forms.Button button5;
}
}
diff --git a/Million Prototype/Form1.cs b/Million Prototype/Form1.cs
index 8a6d940..3988cda 100644
--- a/Million Prototype/Form1.cs
+++ b/Million Prototype/Form1.cs
@@ -421,5 +421,20 @@ namespace Million_Prototype
}
resultList.ToString();
}
+
+ private void button5_Click(object sender, EventArgs e)
+ {
+ try
+ {
+ var ask_price = double.Parse(textBoxAskInput.Text);
+
+ textBoxAskOutput.Text = OrderbookManager.GetAskPrice(ask_price).ToString();
+ }
+ catch(Exception ex)
+ {
+ ex.ToString();
+ }
+
+ }
}
}
diff --git a/Million/Manager/OrderbookManager.cs b/Million/Manager/OrderbookManager.cs
new file mode 100644
index 0000000..6045eeb
--- /dev/null
+++ b/Million/Manager/OrderbookManager.cs
@@ -0,0 +1,78 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace Million.Manager
+{
+ public class OrderbookManager
+ {
+ ///
+ /// 해당 값의 호가 정보 반환
+ ///
+ ///
+ /// true면 업, false면 다운
+ ///
+ public static double GetAskPrice(double value, bool upDown = true)
+ {
+ double priceUnit = 0;
+
+ switch(value)
+ {
+ case double n when(0<= n && n< 0.1):
+ priceUnit = 0.0001;
+ value = Math.Truncate(value * 10000) / 10000;
+ break;
+ case double n when (0.1 <= n && n < 1):
+ priceUnit = 0.001;
+ value = Math.Truncate(value * 1000) / 1000;
+ break;
+ case double n when (1 <= n && n <10):
+ priceUnit = 0.01;
+ value = Math.Truncate(value * 100) / 100;
+ break;
+ case double n when (10 <= n && n < 100):
+ priceUnit = 0.1;
+ value = Math.Truncate(value * 10) / 10;
+ break;
+ case double n when (100 <= n && n < 1000):
+ priceUnit = 1;
+ value = Math.Truncate(value);
+ break;
+ case double n when (1000 <= n && n < 10000):
+ priceUnit = 5;
+ value = ((int)value / 5) * 5;
+ break;
+ case double n when (10000 <= n && n < 100000):
+ priceUnit = 10;
+ value = ((int)value / 10) * 10;
+ break;
+ case double n when (100000 <= n && n < 500000):
+ priceUnit = 50;
+ value = ((int)value / 50) * 50;
+ break;
+ case double n when (500000 <= n && n < 1000000):
+ priceUnit = 100;
+ value = ((int)value / 100) * 100;
+ break;
+ case double n when (1000000 <= n && n < 2000000):
+ priceUnit = 500;
+ value = ((int)value / 500) * 500;
+ break;
+ case double n when (2000000 <= n ):
+ priceUnit = 1000;
+ value = ((int)value / 1000) * 1000;
+ break;
+
+ }
+
+ if (upDown)
+ {
+ value += priceUnit;
+ }
+
+ return value;
+ }
+ }
+}
diff --git a/Million/Million Core.csproj b/Million/Million Core.csproj
index e00aafd..de81bb6 100644
--- a/Million/Million Core.csproj
+++ b/Million/Million Core.csproj
@@ -135,6 +135,7 @@
+