Exemplo n.º 1
0
        /// <summary>
        ///
        /// </summary>
        /// <returns></returns>
        public override string ToString()
        {
            StringBuilder builder = new StringBuilder();

            builder.Append(maSign.ToString("D") + " ,");
            builder.Append(bollingerSign.ToString("D") + " ,");
            builder.Append(ichimokuSign.ToString("D") + " ,");
            builder.Append(parabolicSign.ToString("D") + " ,");
            builder.Append(pivotSign.ToString("D") + " ,");
            builder.Append(ROCSign.ToString("D") + " ,");
            builder.Append(psychologicalSign.ToString("D") + " ,");
            builder.Append(deviationSign.ToString("D") + " ,");
            builder.Append(RSISign.ToString("D") + " ,");
            builder.Append(RCISign.ToString("D") + " ,");
            builder.Append(perRSign.ToString("D") + " ,");
            builder.Append(stochasticSign.ToString("D") + " ,");
            builder.Append(MACDSign.ToString("D") + " ,");
            builder.Append(DMISign.ToString("D") + " ,");
            builder.Append(VolumeSign.ToString("D") + " ,");
            builder.Append(MFISign.ToString("D") + " ,");
            builder.Append(MATrend.ToString("D") + " ,");
            builder.Append(DMITrend.ToString("D") + " ,");
            builder.Append(ParabolicTrend.ToString("D") + " ,");
            builder.Append(MACDTrend.ToString("D") + " ,");
            builder.Append(HLBand.ToString("D") + " ,");
            builder.Append(TwoMA.ToString("D") + " ,");
            builder.Append(FourWeeksRule.ToString("D") + " ,");
            builder.Append(PFB1.ToString("D") + " ,");
            builder.Append(PFB2.ToString("D") + " ,");
            builder.Append(PFB3.ToString("D") + " ,");
            builder.Append(PFB4.ToString("D") + " ,");
            builder.Append(PFB5.ToString("D") + " ,");
            builder.Append(PFS1.ToString("D") + " ,");
            builder.Append(PFS2.ToString("D") + " ,");
            builder.Append(minPurchasePrice + " ,");
            builder.Append("NULL" + " ,");
            builder.Append(WhiteMaruBozu.ToString("D") + " ,");
            builder.Append(WhiteOhbikeBozu.ToString("D") + " ,");
            builder.Append(WhiteYoritsukiBozu.ToString("D") + " ,");
            builder.Append(BlackMaruBozu.ToString("D") + " ,");
            builder.Append(BlackOhbikeBozu.ToString("D") + " ,");
            builder.Append(BlackYoritsukiBozu.ToString("D") + " ,");
            builder.Append(WhiteShitakage.ToString("D") + " ,");
            builder.Append(WhiteUekage.ToString("D") + " ,");
            builder.Append(WhiteKarakasa.ToString("D") + " ,");
            builder.Append(BlackShitakage.ToString("D") + " ,");
            builder.Append(BlackUekage.ToString("D") + " ,");
            builder.Append(BlackKarakasa.ToString("D") + " ,");
            builder.Append(Tonkachi.ToString("D") + " ,");
            builder.Append(Tombo.ToString("D") + " ,");
            builder.Append(Touba.ToString("D") + " ,");
            builder.Append(SankuTatakikomi.ToString("D") + " ,");
            builder.Append(SanteDaiInsen.ToString("D") + " ,");
            builder.Append(LastIdakiInsen.ToString("D") + " ,");
            builder.Append(AkenoMyojo.ToString("D") + " ,");
            builder.Append(Sutegozoko.ToString("D") + " ,");
            builder.Append(TakuriSen.ToString("D") + " ,");
            builder.Append(Seiryokusen.ToString("D") + " ,");
            builder.Append(BlackBlackHarami.ToString("D") + " ,");
            builder.Append(IdakiYosen.ToString("D") + " ,");
            builder.Append(Akasanpei.ToString("D") + " ,");
            builder.Append(KaiFiveYosen.ToString("D") + " ,");
            builder.Append(Osaekomisen.ToString("D") + " ,");
            builder.Append(Agesanpo.ToString("D") + " ,");
            builder.Append(SankuHumiage.ToString("D") + " ,");
            builder.Append(SinneHatteRiguiSen.ToString("D") + " ,");
            builder.Append(IkiDumari.ToString("D") + " ,");
            builder.Append(JouiUwabanareInsen.ToString("D") + " ,");
            builder.Append(YoYoHarami.ToString("D") + " ,");
            builder.Append(LastIdakiYosen.ToString("D") + " ,");
            builder.Append(IdakiInsen.ToString("D") + " ,");
            builder.Append(VolumeRatio + " ,");
            builder.Append(VolumeAmount + " ,");
            builder.Append("'" + DateTime.Today + "'");

            return(builder.ToString());
        }
Exemplo n.º 2
0
        /// <summary>
        /// resultからテクニカル指標を生成,直近のDateを返す
        /// </summary>
        /// <param name="result"></param>
        /// <returns></returns>
        private DateTime MakeIndex(List <Candle> result)
        {
            var highStock  = new List <double>(result.Select(row => row.highMid));
            var lowStock   = new List <double>(result.Select(row => row.lowMid));
            var openStock  = new List <double>(result.Select(row => row.openMid));
            var closeStock = new List <double>(result.Select(row => row.closeMid));
            var dateStock  = new List <DateTime>(result.Select(row => row.time));

            var ma = new MASign(closeStock);

            var bollinger = new BollingerSign(closeStock);

            var ichimoku = new IchimokuSign(highStock, lowStock, closeStock);

            var parabolic = new ParabolicSign(highStock, lowStock, closeStock);

            var pivot = new PivotSign(highStock, lowStock, closeStock);

            var roc = new ROCSign(closeStock);

            var psychological = new PsychologicalSign(closeStock);

            var deviation = new DeviationSign(closeStock);

            var rsi = new RSISign(closeStock);

            var rci = new RCISign(closeStock);

            var perR = new PerRSign(highStock, lowStock, closeStock);

            var stochastic = new StochasticSign(highStock, lowStock, closeStock);

            var macd = new MACDSign(closeStock);

            var dmi = new DMISign(highStock, lowStock, closeStock);

            //詳細画面
            var hlBand = new HaLBandSign(highStock, lowStock, closeStock);

            var twoMA = new TwoMASign(closeStock);

            var fourWeekRule = new FourWeeksRuleSign(highStock, lowStock, closeStock);

            var pfSign = new PointAndFigureSign(closeStock);

            var B1 = pfSign.isB1Sign() ? Sign.TooSell : Sign.Normal;
            var B2 = pfSign.isB2Sign() ? Sign.TooSell : Sign.Normal;
            var B3 = pfSign.isB3Sign() ? Sign.TooSell : Sign.Normal;
            var B4 = pfSign.isB4Sign() ? Sign.TooSell : Sign.Normal;
            var B5 = pfSign.isB5Sign() ? Sign.TooSell : Sign.Normal;
            var S1 = pfSign.isS1Sign() ? Sign.TooBuy : Sign.Normal;
            var S2 = pfSign.isS2Sign() ? Sign.TooBuy : Sign.Normal;

            var sql =
                @"INSERT INTO IndexData_10m_2017(
AsOfDate,
MASign,
BollingerSign,
IchimokuSign,
ParabolicSign,
PivotSign,
ROCSign,
PsychologicalSign,
DeviationSign,
RSISign,
RCISign,
perRSign,
StochasticSign,
MACDSign,
DMISign,
MATrend,
DMITrend,
ParabolicTrend,
MACDTrend,
HLBand,
TwoMA,
FourWeeksRule,
PFB1,
PFB2,
PFB3,
PFB4,
PFB5,
PFS1,
PFS2,
NextBid,
NextAsk,
TenAfterBid,
TenAfterAsk,
TenMaxDDBid,
TenMaxDDAsk,
TenMaxDUBid,
TenMaxDUAsk,
RegisterDate
) VALUES(
" + "'" + dateStock[dateStock.Count - 1].ToString("yyyy-MM-dd HH:mm:ss") + "'" + "," +
                ma.GetSign(closeStock.Count).ToString("D") + "," +
                bollinger.GetSign(closeStock.Count).ToString("D") + "," +
                ichimoku.GetSign(closeStock.Count).ToString("D") + "," +
                parabolic.GetSign(closeStock.Count).ToString("D") + "," +
                pivot.GetSign(closeStock.Count).ToString("D") + "," +
                roc.GetSign(closeStock.Count).ToString("D") + "," +
                psychological.GetSign(closeStock.Count).ToString("D") + "," +
                deviation.GetSign(closeStock.Count).ToString("D") + "," +
                rsi.GetSign(closeStock.Count).ToString("D") + "," +
                rci.GetSign(closeStock.Count).ToString("D") + "," +
                perR.GetSign(closeStock.Count).ToString("D") + "," +
                stochastic.GetSign(closeStock.Count).ToString("D") + "," +
                macd.GetSign(closeStock.Count).ToString("D") + "," +
                dmi.GetSign(closeStock.Count).ToString("D") + "," +
                ma.GetTrend(closeStock.Count).ToString("D") + "," +
                dmi.GetTrend(closeStock.Count).ToString("D") + "," +
                parabolic.GetTrend(closeStock.Count).ToString("D") + "," +
                macd.GetTrend(closeStock.Count).ToString("D") + "," +
                hlBand.GetSign(closeStock.Count).ToString("D") + "," +
                twoMA.GetSign(closeStock.Count).ToString("D") + "," +
                fourWeekRule.GetSign(closeStock.Count).ToString("D") + "," +
                B1.ToString("D") + "," +
                B2.ToString("D") + "," +
                B3.ToString("D") + "," +
                B4.ToString("D") + "," +
                B5.ToString("D") + "," +
                S1.ToString("D") + "," +
                S2.ToString("D") + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "NULL" + "," +
                "'" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") + "'" +
                ")";

            DB.ExecuteNonQuery(sql);

            return(dateStock.Last());
        }