Esempio n. 1
0
        public static TriggerDetail Create(bool isTriggered, DateTime triggerTime, double triggeredPrice, ActionTypeEnum tradeType)
        {
            var triggerDetail = new TriggerDetail()
            {
                IsTriggered    = isTriggered,
                TriggerTime    = triggerTime,
                TriggeredPrice = triggeredPrice,
                TradeType      = tradeType
            };

            return(triggerDetail);
        }
Esempio n. 2
0
        public static ROCIndicator Create(double eMA9Day, double eMA12Day, double rOCOnEMA9Day,
                                          Quote market, TriggerDetail triggerDetail)
        {
            var macd = new ROCIndicator()
            {
                ROC14Days     = eMA9Day,
                EMA9Day       = eMA12Day,
                ROCOnEMA9Day  = rOCOnEMA9Day,
                Quote         = market,
                TriggerDetail = triggerDetail
            };

            return(macd);
        }
Esempio n. 3
0
        public ROCLists EvaluateTrigger(ROCLists indicators, int index)
        {
            if (indicators[index].EMA9Day <= 0)
            {
                return(indicators);
            }

            var tradeType = indicators[index].ROC14Days > indicators[index].ROCOnEMA9Day ? ActionTypeEnum.Buy : ActionTypeEnum.Sell;

            var isTriggered = indicators[index - 1].TriggerDetail == null || indicators[index - 1].TriggerDetail.TradeType == tradeType ? false : true;

            indicators[index].SetTriggerDetail(TriggerDetail.Create(isTriggered, indicators[index].Quote.Today, indicators[index].Quote.Close, tradeType));

            return(indicators);
        }
Esempio n. 4
0
 public void SetTriggerDetail(TriggerDetail triggerDetail)
 {
     TriggerDetail = triggerDetail;
 }