Beispiel #1
0
        static KOACode()
        {
            // 주문타입 설정
            orderType[0] = new OrderType(1, "신규매수");
            orderType[1] = new OrderType(2, "신규매도");
            orderType[2] = new OrderType(3, "매수취소");
            orderType[3] = new OrderType(4, "매도취소");
            orderType[4] = new OrderType(5, "매수정정");
            orderType[5] = new OrderType(6, "매도정정");

            // 호가타입 설정
            hogaGb[0] = new HogaGb("00", "지정가");
            hogaGb[1] = new HogaGb("03", "시장가");
            hogaGb[2] = new HogaGb("05", "조건부지정가");
            hogaGb[3] = new HogaGb("06", "최유리지정가");
            hogaGb[4] = new HogaGb("07", "최우선지정가");
            hogaGb[5] = new HogaGb("10", "지정가IOC");
            hogaGb[6] = new HogaGb("13", "시장가IOC");
            hogaGb[7] = new HogaGb("16", "최유리IOC");
            hogaGb[8] = new HogaGb("20", "지정가FOK");
            hogaGb[9] = new HogaGb("23", "시장가FOK");
            hogaGb[10] = new HogaGb("26", "최유리FOK");
            hogaGb[11] = new HogaGb("61", "시간외단일가매매");
            hogaGb[12] = new HogaGb("81", "시간외종가");

            // 마켓코드 설정
            marketCode[0] = new MarketCode("0", "장내");
            marketCode[1] = new MarketCode("3", "ELW");
            marketCode[2] = new MarketCode("4", "뮤추얼펀드");
            marketCode[3] = new MarketCode("5", "신주인수권");
            marketCode[4] = new MarketCode("6", "리츠");
            marketCode[5] = new MarketCode("8", "ETF");
            marketCode[6] = new MarketCode("9", "하이일드펀드");
            marketCode[7] = new MarketCode("10", "코스닥");
            marketCode[8] = new MarketCode("30", "제3시장");
        }
Beispiel #2
0
        static KOACode()
        {
            // 주문타입 설정
            orderType[0] = new OrderType(1, "신규매수");
            orderType[1] = new OrderType(2, "신규매도");
            orderType[2] = new OrderType(3, "매수취소");
            orderType[3] = new OrderType(4, "매도취소");
            orderType[4] = new OrderType(5, "매수정정");
            orderType[5] = new OrderType(6, "매도정정");

            // 호가타입 설정
            hogaGb[0]  = new HogaGb("00", "지정가");
            hogaGb[1]  = new HogaGb("03", "시장가");
            hogaGb[2]  = new HogaGb("05", "조건부지정가");
            hogaGb[3]  = new HogaGb("06", "최유리지정가");
            hogaGb[4]  = new HogaGb("07", "최우선지정가");
            hogaGb[5]  = new HogaGb("10", "지정가IOC");
            hogaGb[6]  = new HogaGb("13", "시장가IOC");
            hogaGb[7]  = new HogaGb("16", "최유리IOC");
            hogaGb[8]  = new HogaGb("20", "지정가FOK");
            hogaGb[9]  = new HogaGb("23", "시장가FOK");
            hogaGb[10] = new HogaGb("26", "최유리FOK");
            hogaGb[11] = new HogaGb("61", "시간외단일가매매");
            hogaGb[12] = new HogaGb("81", "시간외종가");

            // 마켓코드 설정
            marketCode[0] = new MarketCode("0", "장내");
            marketCode[1] = new MarketCode("3", "ELW");
            marketCode[2] = new MarketCode("4", "뮤추얼펀드");
            marketCode[3] = new MarketCode("5", "신주인수권");
            marketCode[4] = new MarketCode("6", "리츠");
            marketCode[5] = new MarketCode("8", "ETF");
            marketCode[6] = new MarketCode("9", "하이일드펀드");
            marketCode[7] = new MarketCode("10", "코스닥");
            marketCode[8] = new MarketCode("30", "제3시장");
        }
        public void Add_Click()
        {
            MarketCode MarketCodeView = new MarketCode();

            MarketCodeView.Show();
        }
Beispiel #4
0
        /// <summary>
        /// 클래스를 초기화한다. 실제 서버와 연결을 시도하는 것은 아니고, 연결 정보를 저장하고 초기화한다.<br/>
        /// keepAliveTimeout의 값이 0이면 KeepAlive 패킷을 전송하지 않는다.<br/>
        /// <br/>
        /// ProxyServer 클래스의 정적인 데이터는 외부에 따로 저장할 수가 있는데, 
        /// 클라이언트는 ProxyServer.Uninitialize() 메소드 호출을 통해서 얻은 정적인 데이터를 ProxyServer.Initialize() 호출시에 다시 설정할 수 있다.
        /// </summary>
        /// <param name="serverIp">Server IP</param>
        /// <param name="serverPort">Server Port</param>
        /// <param name="methodTimeout">Method의 타임아웃. milliseconds</param>
        /// <param name="keepAliveTimeout">KeepAlive 패킷 전송 간격. milliseconds</param>
        /// <param name="isTestVer">클라이언트의 테스트 버전 여부.</param>
        /// <param name="isPaidVer">클라이언트의 유료 버전 여부.</param>
        /// <param name="marketCode">클라이언트의 마켓 코드.</param>
        /// <param name="localeCode">클라이언트의 로케일 코드.</param>
        /// <param name="configData">단말기에 저장되어 있는 캐싱 데이터 스트림. 데이터가 없으면 null을 세팅한다.</param>
        /// <returns>0이면 성공, 이외의 값은 에러</returns>
        public uint Initialize(string serverIp, int serverPort, int methodTimeout, int keepAliveTimeout, bool isTestVer, bool isPaidVer, MarketCode marketCode, LocaleCode localeCode, byte[] configData)
        {
            ErrCode errCode = ErrCode.Success;

            if (!m_isInitialized)
            {
                byte[] temp = null;
                Uninitialize(out temp);

                m_socketTimeout     = methodTimeout;
                m_keepAliveTimeout  = keepAliveTimeout;
                m_clientProductVer  = (byte)((isTestVer ? 0x80 : 0x00) + (isPaidVer ? 0x40: 0x00) + (byte)marketCode);
                m_localeCode        = localeCode;

                m_stageManager  = new StageManager();
                m_stageManager.SetServer(this);
                m_itemManager   = new ItemManager();
                m_itemManager.SetServer(this);

                if (configData != null)
                {
                    try
                    {
                        NMCryptor.DecryptBuffer(configData, SentinelValues.DATA_ENCRYPT_SEED);

                        SimpleStream stream = new SimpleStream();
                        stream.SetBuffer(configData, false);

                        DeSerialize(stream);
                    }
                    catch (Exception e)
                    {
                        Log(string.Format("[PSVR] Initialize() : {0}", e.Message));
                    }
                }

                if (serverIp != m_serverIp || serverPort != m_serverPort)
                {
                    m_lastConnectedServerIp     = m_serverIp        = serverIp;
                    m_lastConnectedServerPort   = m_serverPort      = serverPort;
                }

                if (m_lastConnectedServerIp == null || m_lastConnectedServerIp.Length < 1)
                {
                    m_lastConnectedServerIp     = m_serverIp;
                    m_lastConnectedServerPort   = m_serverPort;
                }

                m_serverVal = new ValServer();
                m_serverVal.NotifyHandler    = OnNotifyHandler;
                m_serverVal.LogHandler       = sm_logHandler;
                m_serverVal.Initialize(this);

                m_isInitialized = true;
            }

            return (uint)errCode;
        }