コード例 #1
0
        override protected void StrategyExecute()
        {
            BasicAroonRule rule = new BasicAroonRule(data.Bars, parameters[0]);
            //PriceTwoSMARule smarule = new PriceTwoSMARule(data.Close, 10, 20);

            int cutlosslevel    = (int)parameters[1];
            int takeprofitlevel = (int)parameters[2];

            for (int idx = rule.aroon.FirstValidValue; idx < rule.aroon.Count; idx++)
            {
                //Buy Condition
                if (rule.isValid_forBuy(idx))
                {
                    BuyAtClose(idx);
                }

                //Sell Condition
                if (rule.isValid_forSell(idx))
                {
                    SellAtClose(idx);
                }

                if (is_bought && CutLossCondition(data.Close[idx], buy_price, cutlosslevel))
                {
                    SellCutLoss(idx);
                }

                if (is_bought && TakeProfitCondition(data.Close[idx], buy_price, takeprofitlevel))
                {
                    SellTakeProfit(idx);
                }
            }
        }
コード例 #2
0
ファイル: BasicAroon.cs プロジェクト: oghenez/trade-software
        override protected void StrategyExecute()
        {
            BasicAroonRule rule = new BasicAroonRule(data.Bars, parameters[0]);
            //PriceTwoSMARule smarule = new PriceTwoSMARule(data.Close, 10, 20);

            int cutlosslevel = (int)parameters[1];
            int takeprofitlevel = (int)parameters[2];

            for (int idx = rule.aroon.FirstValidValue; idx < rule.aroon.Count; idx++)
            {
                //Buy Condition
                if (rule.isValid_forBuy(idx))
                    BuyAtClose(idx);

                //Sell Condition
                if (rule.isValid_forSell(idx))
                    SellAtClose(idx);

                if (is_bought && CutLossCondition(data.Close[idx], buy_price, cutlosslevel))
                    SellCutLoss(idx);

                if (is_bought && TakeProfitCondition(data.Close[idx], buy_price, takeprofitlevel))
                    SellTakeProfit(idx);
            }
        }