- 매도 정정 주문 추가 (3초마다)
This commit is contained in:
@@ -37,15 +37,21 @@ namespace AutoSellerNS
|
||||
public int m_iRemainCnt;
|
||||
public int m_iOrderPrice;
|
||||
public string m_strDesc;
|
||||
public bool m_bAsk;
|
||||
public int m_iOrgOrderNo;
|
||||
public DateTime m_Time;
|
||||
}
|
||||
|
||||
|
||||
int m_iCurPricePanelWith;
|
||||
CybosHelper m_CybosHelper = null;
|
||||
List<ITEM> m_Items = new List<ITEM>();
|
||||
List<NCITEM> m_NCItems = new List<NCITEM>();
|
||||
string m_strSelectedCode = "";
|
||||
bool m_bSell = false;
|
||||
|
||||
System.Timers.Timer m_Timer = new System.Timers.Timer();
|
||||
|
||||
public AutoSeller()
|
||||
{
|
||||
InitializeComponent();
|
||||
@@ -90,6 +96,23 @@ namespace AutoSellerNS
|
||||
materialSkinManager.AddFormToManage(this);
|
||||
materialSkinManager.Theme = MaterialSkinManager.Themes.DARK;
|
||||
materialSkinManager.ColorScheme = new ColorScheme(Primary.BlueGrey800, Primary.BlueGrey900, Primary.BlueGrey500, Accent.LightBlue200, TextShade.WHITE);
|
||||
|
||||
m_Timer.Interval = 500;
|
||||
m_Timer.Elapsed += Timer_Elapsed;
|
||||
m_Timer.Start();
|
||||
}
|
||||
|
||||
private void Timer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
|
||||
{
|
||||
foreach(var NCItem in m_NCItems)
|
||||
{
|
||||
if(NCItem.m_bAsk == true && DateTime.Now-NCItem.m_Time >= TimeSpan.FromSeconds(3))
|
||||
{
|
||||
m_CybosHelper.CorrectionItem(NCItem.m_strCode, NCItem.m_iOrgOrderNo, m_CybosHelper.GetItem(NCItem.m_strCode).m_aiAskPrice[0]);
|
||||
NCItem.m_Time = DateTime.Now;
|
||||
Util.Log(Util.LOG_TYPE.SELL, string.Format("[{0}] 정정 주문", NCItem.m_strCodeName));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public void SetAccountList(string[] aAccountList)
|
||||
@@ -205,19 +228,33 @@ namespace AutoSellerNS
|
||||
void UpdateNC()
|
||||
{
|
||||
var NCItems = m_CybosHelper.UpdateNC();
|
||||
|
||||
m_NCItems.RemoveAll(s => NCItems.Any(t => t.m_iOrgOrderNo== s.m_iOrgOrderNo) == false);
|
||||
foreach(var NCItem in NCItems)
|
||||
{
|
||||
if(m_NCItems.Any(s => s.m_iOrgOrderNo == NCItem.m_iOrgOrderNo) == false)
|
||||
{
|
||||
NCItem.m_Time = DateTime.Now;
|
||||
m_NCItems.Add(NCItem);
|
||||
}
|
||||
}
|
||||
|
||||
lvNCItem.Items.Clear();
|
||||
if(lvNCItem.InvokeRequired)
|
||||
{
|
||||
lvNCItem.Invoke(new Action(() => {
|
||||
foreach(var NCItem in NCItems)
|
||||
{
|
||||
lvNCItem.Items.Add(new ListViewItem(new string[] {
|
||||
ListViewItem viewItem = new ListViewItem(new string[] {
|
||||
NCItem.m_strCode,
|
||||
NCItem.m_strCodeName,
|
||||
NCItem.m_strDesc,
|
||||
string.Format("{0:n0}", NCItem.m_iOrderPrice),
|
||||
string.Format("{0:n0}", NCItem.m_iRemainCnt),
|
||||
}));
|
||||
});
|
||||
lvNCItem.Items.Add(viewItem);
|
||||
viewItem.UseItemStyleForSubItems = false;
|
||||
viewItem.SubItems[chNCType.Index].ForeColor = NCItem.m_bAsk ? Color.Blue : Color.Red;
|
||||
}
|
||||
}));
|
||||
}
|
||||
@@ -225,13 +262,16 @@ namespace AutoSellerNS
|
||||
{
|
||||
foreach(var NCItem in NCItems)
|
||||
{
|
||||
lvNCItem.Items.Add(new ListViewItem(new string[] {
|
||||
NCItem.m_strCode,
|
||||
NCItem.m_strCodeName,
|
||||
NCItem.m_strDesc,
|
||||
string.Format("{0:n0}", NCItem.m_iOrderPrice),
|
||||
string.Format("{0:n0}", NCItem.m_iRemainCnt),
|
||||
}));
|
||||
ListViewItem viewItem = new ListViewItem(new string[] {
|
||||
NCItem.m_strCode,
|
||||
NCItem.m_strCodeName,
|
||||
NCItem.m_strDesc,
|
||||
string.Format("{0:n0}", NCItem.m_iOrderPrice),
|
||||
string.Format("{0:n0}", NCItem.m_iRemainCnt),
|
||||
});
|
||||
lvNCItem.Items.Add(viewItem);
|
||||
viewItem.UseItemStyleForSubItems = false;
|
||||
viewItem.SubItems[chNCType.Index].ForeColor = NCItem.m_bAsk ? Color.Blue : Color.Red;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user