- 매도 정정 주문 추가 (3초마다)

This commit is contained in:
2017-02-22 23:44:44 +09:00
parent 0db71c74e7
commit f4872096c6
3 changed files with 297 additions and 241 deletions

View File

@@ -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;
}
}
}