Ejemplo n.º 1
0
 public void AddXYKlineSingle(XYKline k)
 {
     lock (m_object)
     {
         this.m_singleKline.Add(k);
     }
 }
Ejemplo n.º 2
0
 public void AddWholeXYKline(XYKline k)
 {
     lock (m_object)
     {
         this.m_wholeRealKline.Add(k);
     }
 }
Ejemplo n.º 3
0
        /// <summary>
        /// 往表里添加成交明细记录
        /// </summary>
        /// <param name="KSingle"></param>
        public void SetTradingItems(XYKline KSingle)
        {
            //其他线程调用
            if (this.InvokeRequired)
            {
                IAsyncResult result = this.BeginInvoke(new Action <XYKline>(SetTradingItems), KSingle);
                return;
            }

            m_kSingle.Add(KSingle);

            if (EventRecodeChanged != null)
            {
                EventRecodeChanged();
            }
        }
Ejemplo n.º 4
0
        /// <summary>
        /// 收到平仓消息,则获取全局的交易明细计算资金值
        /// </summary>
        public void CalNewQualityValue()
        {
            //其他线程调用
            if (this.InvokeRequired)
            {
                IAsyncResult result = this.BeginInvoke(new Action(CalNewQualityValue));
                return;
            }

            List <XYKline> kSingleList = KlineHandel.Instance.SINGLEREALKLINE;

            if (kSingleList == null || kSingleList.Count <= 0)
            {
                return;
            }

            //最新一笔明细
            XYKline newKSingle = KlineHandel.Instance.SINGLEREALKLINE[KlineHandel.Instance.SINGLEREALKLINE.Count - 1];

            if (KlineHandel.Instance.SINGLEREALKLINE.Count >= 2)
            {
                //倒数第二笔明细
                XYKline lastKSingle = KlineHandel.Instance.SINGLEREALKLINE[KlineHandel.Instance.SINGLEREALKLINE.Count - 2];

                if (lastKSingle.BUYOrSell == "买入持仓")
                {
                    m_wholeNet = m_wholeNet + newKSingle.Price - lastKSingle.Price;
                }

                if (lastKSingle.BUYOrSell == "卖空持仓")
                {
                    m_wholeNet = m_wholeNet + lastKSingle.Price - newKSingle.Price;
                }

                this.chart1.Series["净值"].Points.AddXY(m_nowCal, m_wholeNet);

                CalMaxDrowDownRadio();
            }
        }