Esempio n. 1
0
        private void startTradgTradhUpdating()
        {
            List <string> linkList = GetSourceFileLinks(tse_url);

            nameDic = JapanShared.GetNameMap(baknoteFilePath, workSheetName);
            // For tradgUpdate
            try
            {
                dailySourceFilePath = DownloadFile(linkList[0]);
                JpTRADGInfo tradgTradingInfo = printAndGetJpDailyTradingInfo(dailySourceFilePath);
                GenerateTTradgTargetFile(targretFileDir, tradgTradingInfo);
            }
            catch (Exception ex)
            {
                Logger.Log("There's error during task: TRADG. Exception: " + ex.Message);
            }
            // For TRADH
            try
            {
                if (linkList.Count == 2)
                {
                    weeklySourceFilePath = DownloadFile(linkList[1]);
                    JpTRADHInfo tradhTradeInfo = PrintAndGetJpWeeklyTradingInfo(weeklySourceFilePath);
                    GenerateTradhTargetFile(targretFileDir, tradhTradeInfo);
                }
            }
            catch (Exception ex)
            {
                Logger.Log("There's error during task: TRADH. Exception: " + ex.Message);
            }
        }
Esempio n. 2
0
        private JpTRADGInfo printAndGetJpDailyTradingInfo(string filePath)
        {
            JpTRADGInfo tradgInfo = new JpTRADGInfo();

            using (ExcelApp app = new ExcelApp(false, false))
            {
                var workbook  = ExcelUtil.CreateOrOpenExcelFile(app, filePath);
                var worksheet = workbook.Worksheets[1] as Worksheet;
                JapanShared.PrintWorksheet(worksheet, printerName, XlPageOrientation.xlPortrait);
                tradgInfo.GSellSum       = ExcelUtil.GetRange(7, 5, worksheet).Value2.ToString().Trim();
                tradgInfo.GBuySum        = ExcelUtil.GetRange(7, 10, worksheet).Value2.ToString().Trim();
                tradgInfo.CurrentSellSum = ExcelUtil.GetRange(12, 5, worksheet).Value2.ToString().Trim();
                tradgInfo.NextSellSum    = ExcelUtil.GetRange(12, 6, worksheet).Value2.ToString().Trim();
                tradgInfo.TotalSellSum   = ExcelUtil.GetRange(12, 8, worksheet).Value2.ToString().Trim();
                tradgInfo.CurrentNChg1   = ExcelUtil.GetRange(13, 5, worksheet).Value2.ToString();
                tradgInfo.NextNChg1      = ExcelUtil.GetRange(13, 6, worksheet).Value2.ToString();
                tradgInfo.TotalNchg1     = ExcelUtil.GetRange(13, 8, worksheet).Value2.ToString();
                tradgInfo.CurrentBuySum  = ExcelUtil.GetRange(12, 10, worksheet).Value2.ToString();
                tradgInfo.NextBuySum     = ExcelUtil.GetRange(12, 12, worksheet).Value2.ToString();
                tradgInfo.TotalBuySum    = ExcelUtil.GetRange(12, 14, worksheet).Value2.ToString();
                tradgInfo.CurrentNChg2   = ExcelUtil.GetRange(13, 10, worksheet).Value2.ToString();
                tradgInfo.NextNChg2      = ExcelUtil.GetRange(13, 12, worksheet).Value2.ToString();
                tradgInfo.TotalNchg2     = ExcelUtil.GetRange(13, 14, worksheet).Value2.ToString().Trim();
                tradgInfo.Date           = GetDateTime(ExcelUtil.GetRange(33, 3, worksheet).Value2.ToString().Trim()).ToString("ddMMMyy");
                int currentRow = 37;
                while (ExcelUtil.GetRange(currentRow, 3, worksheet).Value2.ToString().Trim() != "-")
                {
                    Transaction tran = new Transaction
                    {
                        CompanyInfo =
                        {
                            OriginalName =
                                ExcelUtil.GetRange(currentRow, 3, worksheet).Value2.ToString().Replace(" ", "")
                        }
                    };
                    if (nameDic.ContainsKey(tran.CompanyInfo.OriginalName))
                    {
                        tran.CompanyInfo.EnglishName      = nameDic[tran.CompanyInfo.OriginalName].EnglistName;
                        tran.CompanyInfo.ShortEnglishName = nameDic[tran.CompanyInfo.OriginalName].ShortName;
                        tran.CompanyInfo.JapaneseName     = nameDic[tran.CompanyInfo.OriginalName].JapaneseName;
                    }
                    else
                    {
                        Logger.Log(string.Format("There's no such name for {0}, please check the baknote file.", tran.CompanyInfo.OriginalName), Logger.LogType.Warning);
                    }
                    tran.SellSum  = ExcelUtil.GetRange(currentRow, 7, worksheet).Value2.ToString();
                    tran.BuySum   = ExcelUtil.GetRange(currentRow, 9, worksheet).Value2.ToString();
                    tran.TotalSum = ExcelUtil.GetRange(currentRow, 13, worksheet).Value2.ToString();
                    tradgInfo.TransactionList.Add(tran);
                    currentRow++;
                }
                tradgInfo.Top15SellSum  = ExcelUtil.GetRange(52, 7, worksheet).Value2.ToString().Trim();
                tradgInfo.Top15BuySum   = ExcelUtil.GetRange(52, 9, worksheet).Value2.ToString().Trim();
                tradgInfo.Top15TotalSum = ExcelUtil.GetRange(52, 13, worksheet).Value2.ToString().Trim();
                tradgInfo.GTotalSum     = ExcelUtil.GetRange(53, 13, worksheet).Value2.ToString().Trim();
                workbook.Close(false, workbook.FullName, Missing.Value);
            }
            return(tradgInfo);
        }
Esempio n. 3
0
        //Generate TTRadgTarget File
        private void GenerateTTradgTargetFile(string targetFileDir, JpTRADGInfo tradingInfo)
        {
            string fileName = "TTRADG";

            fileName += MiscUtil.getFileExtension(targetFileVersion);
            if (!Directory.Exists(targetFileDir))
            {
                Directory.CreateDirectory(targetFileDir);
            }
            fileName = Path.Combine(targetFileDir, fileName);
            if (File.Exists(fileName))
            {
                File.Delete(fileName);
            }
            using (ExcelApp app = new ExcelApp(false, false))
            {
                var workbook  = ExcelUtil.CreateOrOpenExcelFile(app, fileName);
                var worksheet = workbook.Worksheets[1] as Worksheet;
                ((Range)worksheet.Columns["A", Type.Missing]).ColumnWidth = 8.43;
                ((Range)worksheet.Columns["B", Type.Missing]).ColumnWidth = 11.57;
                ((Range)worksheet.Columns["C", Type.Missing]).ColumnWidth = 14.57;
                ((Range)worksheet.Columns["D", Type.Missing]).ColumnWidth = 23.43;
                ((Range)worksheet.Columns["E", Type.Missing]).ColumnWidth = 16.57;
                ((Range)worksheet.Columns["F", Type.Missing]).ColumnWidth = 11.29;
                ((Range)worksheet.Columns["G", Type.Missing]).ColumnWidth = 15.29;
                ((Range)worksheet.Columns["A:G", Type.Missing]).Font.Name = "明朝";
                worksheet.Cells[1, 1] = "ARBITRAGE TRANSACTION (T/TRADG)";
                Range a1Range = ExcelUtil.GetRange(1, 1, worksheet);
                a1Range.Font.Size     = 16;
                worksheet.Cells[1, 6] = tradingInfo.Date;
                worksheet.Cells[1, 7] = "AS OF " + tradingInfo.Date.ToUpper();
                Range f1Range = ExcelUtil.GetRange(1, 7, worksheet);
                f1Range.Interior.Color = ColorTranslator.ToOle(Color.Violet);
                worksheet.Cells[2, 7]  = "↑飛ばす前に2営業日前になっているかどうか確認";
                Range g2Range = ExcelUtil.GetRange(2, 7, worksheet);
                g2Range.Font.Color = ColorTranslator.ToOle(Color.Red);
                g2Range.Font.Size  = 9;
                int currentRow = 4;
                for (int i = 0; i < 15; i++)
                {
                    worksheet.Cells[currentRow + i, 1] = (i + 1).ToString();
                }
                worksheet.Cells[3, 2] = "SEUCURITIES";
                worksheet.Cells[3, 3] = "ENGLISH";
                worksheet.Cells[3, 4] = "JAPANESE";
                worksheet.Cells[3, 5] = "SELL";
                worksheet.Cells[3, 6] = "BUY";
                worksheet.Cells[3, 7] = "TOTAL";
                Range row3Range = ExcelUtil.GetRange(3, 2, 3, 7, worksheet);
                row3Range.Font.Size         = 10;
                row3Range.Font.Bold         = true;
                row3Range.Borders.LineStyle = 1;
                row3Range.Borders.Weight    = XlBorderWeight.xlMedium;
                currentRow = 4;
                foreach (Transaction tran in tradingInfo.TransactionList)
                {
                    worksheet.Cells[currentRow, 3] = tran.CompanyInfo.EnglishName;
                    worksheet.Cells[currentRow, 4] = tran.CompanyInfo.JapaneseName;
                    worksheet.Cells[currentRow, 5] = tran.SellSum;
                    worksheet.Cells[currentRow, 6] = tran.BuySum;
                    worksheet.Cells[currentRow, 7] = tran.TotalSum;
                    currentRow++;
                }
                Range F4g18Range = ExcelUtil.GetRange(4, 5, 18, 7, worksheet);
                F4g18Range.Font.Bold = true;
                F4g18Range.Font.Size = 12;
                ExcelUtil.GetRange(4, 2, 18, 2, worksheet).Interior.Color  = ColorTranslator.ToOle(Color.LightGray);
                ExcelUtil.GetRange(4, 3, 18, 3, worksheet).Interior.Color  = ColorTranslator.ToOle(Color.Yellow);
                ExcelUtil.GetRange(4, 4, 18, 6, worksheet).Interior.Color  = ColorTranslator.ToOle(Color.LightGray);
                ExcelUtil.GetRange(19, 2, 20, 4, worksheet).Interior.Color = ColorTranslator.ToOle(Color.LightGray);
                ExcelUtil.GetRange(23, 2, 24, 7, worksheet).Interior.Color = ColorTranslator.ToOle(Color.LightGray);
                Range b4g18Range = ExcelUtil.GetRange(4, 2, 18, 7, worksheet);
                b4g18Range.Borders.LineStyle = 1;
                b4g18Range.Borders.Weight    = XlBorderWeight.xlMedium;
                worksheet.Cells[19, 2]       = "TOP15";
                worksheet.Cells[19, 5]       = tradingInfo.Top15SellSum;
                worksheet.Cells[19, 6]       = tradingInfo.Top15BuySum;
                worksheet.Cells[19, 7]       = tradingInfo.Top15TotalSum;
                worksheet.Cells[20, 2]       = "G.TOTAL";
                worksheet.Cells[20, 5]       = tradingInfo.GSellSum;
                worksheet.Cells[20, 6]       = tradingInfo.GBuySum;
                worksheet.Cells[20, 7]       = tradingInfo.GTotalSum;
                Range b19g20Range = ExcelUtil.GetRange(19, 2, 20, 7, worksheet);
                b19g20Range.Font.Size         = 12;
                b19g20Range.Font.Bold         = true;
                b19g20Range.Borders.LineStyle = 1;
                b19g20Range.Borders.Weight    = XlBorderWeight.xlMedium;
                worksheet.Cells[22, 2]        = "SELL";
                worksheet.Cells[22, 5]        = "N.CHG";
                worksheet.Cells[22, 6]        = "BUY";
                worksheet.Cells[22, 7]        = "N.CHG";
                Range row22Range = ExcelUtil.GetRange(22, 1, 22, 7, worksheet);
                row22Range.Font.Bold         = true;
                row22Range.Font.Size         = 11;
                row22Range.Borders.LineStyle = 1;
                row22Range.Borders.Weight    = XlBorderWeight.xlMedium;
                worksheet.Cells[21, 4]       = "OK";
                worksheet.Cells[23, 1]       = "CURRENT MTH";
                worksheet.Cells[23, 2]       = tradingInfo.CurrentSellSum;
                worksheet.Cells[23, 5]       = tradingInfo.CurrentNChg1;
                worksheet.Cells[23, 6]       = tradingInfo.CurrentBuySum;
                worksheet.Cells[23, 7]       = tradingInfo.CurrentNChg2;
                worksheet.Cells[24, 1]       = "NEXT-M ONWRD";
                worksheet.Cells[24, 2]       = tradingInfo.NextSellSum;
                worksheet.Cells[24, 5]       = tradingInfo.NextNChg1;
                worksheet.Cells[24, 6]       = tradingInfo.NextBuySum;
                worksheet.Cells[24, 7]       = tradingInfo.NextNChg2;
                worksheet.Cells[25, 1]       = "TOTAL";
                worksheet.Cells[25, 2]       = tradingInfo.TotalSellSum;
                worksheet.Cells[25, 5]       = tradingInfo.TotalNchg1;
                worksheet.Cells[25, 6]       = tradingInfo.TotalBuySum;
                worksheet.Cells[25, 7]       = tradingInfo.TotalNchg2;
                Range a23a25Range = ExcelUtil.GetRange(23, 1, 25, 1, worksheet);
                a23a25Range.Borders.LineStyle = 1;
                a23a25Range.Borders.Weight    = XlBorderWeight.xlMedium;
                Range b23g25Range = ExcelUtil.GetRange(23, 2, 25, 7, worksheet);
                b23g25Range.Borders.LineStyle = 1;
                b23g25Range.Borders.Weight    = XlBorderWeight.xlMedium;
                Range b22d25Range = ExcelUtil.GetRange(22, 2, 25, 4, worksheet);
                b22d25Range.Merge(true);
                workbook.Close(true, workbook.FullName, false);
                AddResult("Target file", fileName, "file");
                //TaskResultList.Add(new TaskResultEntry("Target File", "", fileName));
            }
        }