public void addNewOrder(string orderId, FDDLExecutionData exeData) { m_rawData[orderId] = exeData; if (m_mainList != null) { addToMainList(exeData); } }
private void thirdTrial(object sender, ElapsedEventArgs e) { var exeData = new FDDLExecutionData(m_stockName, OrderType.SELL, getQuantity(), getQuantity() - getAchieved()); FDDLContractionEventCallback evcall = new FDDLContractionEventCallback(null, exeData, FDDLUIBinder.getAAfterWrapper()); ContractionEventManager.addCallback("FDDL-ThirdSell", evcall); int res = ProgramControl.getGateway().SendOrder("FDDL-ThirdSell", Screens.SCREEN_FDDLORDER, SystemInfo.ACCOUNT, 2, getStockCode(), getQuantity(), getPrice(), "62", ""); if (res != 0) { //Debug Log -> 리턴코드 값 / 리턴코드표 참고 } }
private void addToMainList(FDDLExecutionData exeData) { ListViewItem lvi = new ListViewItem(); lvi.Text = exeData.getStockName(); string orderTypeStr = exeData.getOrderType() == OrderType.BUY ? "매수" : "매도"; lvi.SubItems.Add(orderTypeStr); lvi.SubItems.Add(exeData.getQuantity().ToString()); lvi.SubItems.Add(exeData.getOrderedQuantity().ToString()); lvi.SubItems.Add(exeData.getAchieved().ToString()); m_mainList.Items.Add(lvi); }
private void firstTrial(object sender, ElapsedEventArgs e) { var exeData = new FDDLExecutionData(m_stockName, OrderType.BUY, getQuantity(), getQuantity()); FDDLContractionEventCallback evcall = new FDDLContractionEventCallback(this, exeData, FDDLUIBinder.getBeforeWrapper()); ContractionEventManager.addCallback("FDDL-Before", evcall); int res = ProgramControl.getGateway().SendOrder("FDDL-Before", Screens.SCREEN_FDDLORDER, SystemInfo.ACCOUNT, 1, getStockCode(), getQuantity(), 0, "61", ""); if (res != 0) { //Debug Log -> 리턴코드 값 / 리턴코드표 참고 } }
private void secondTrial(object sender, ElapsedEventArgs e) { int orderQuantity = getQuantity() - getAchieved(); var exeData = new FDDLExecutionData(m_stockName, OrderType.BUY, getQuantity(), orderQuantity); FDDLContractionEventCallback evcall = new FDDLContractionEventCallback(this, exeData, FDDLUIBinder.getRegularWrapper()); ContractionEventManager.addCallback("FDDL-Regular", evcall); int res = ProgramControl.getGateway().SendOrder("FDDL-Regular", Screens.SCREEN_FDDLORDER, SystemInfo.ACCOUNT, 1, getStockCode(), orderQuantity, getPrice(), "00", ""); if (res != 0) { //Debug Log -> 리턴코드 값 / 리턴코드표 참고 } }
public void addNewContracted(string orderId, int price, int quantity) { m_rawData[orderId].addContracted(price, quantity); FDDLExecutionData data = m_rawData[orderId]; if (m_mainList != null) { updateMainList(data.getStockName(), data.getAchieved()); } if (m_subList != null) { addToSubList(price, quantity); } }
public void eventCallback(TrInfoWrapper wrapper) { int ep = int.Parse(wrapper.getData("현재가", 0)); if (ep <= m_parent.getPrice()) { int orderQuantity = m_parent.getQuantity() - m_parent.getAchieved(); var exeData = new FDDLExecutionData(m_parent.getStockName(), OrderType.BUY, m_parent.getQuantity(), orderQuantity); FDDLContractionEventCallback evcall = new FDDLContractionEventCallback(m_parent, exeData, FDDLUIBinder.getAfterWrapper()); ContractionEventManager.addCallback("FDDL-AfterOrder", evcall); int res = ProgramControl.getGateway().SendOrder("FDDL-AfterOrder", Screens.SCREEN_FDDLORDER, SystemInfo.ACCOUNT, 1, m_parent.getStockCode(), orderQuantity, 0, "81", ""); if (res != 0) { //Debug Log -> 리턴코드 값 / 리턴코드표 참고 } } }
public FDDLContractionEventCallback(ScheduledExecution plan, FDDLExecutionData exeData, FDDLUIWrapper uiWrapper) { m_plan = plan; m_exeData = exeData; m_uiWrapper = uiWrapper; }