Example #1
0
        public void SaveJsonFileWithSignalModelContextObjects(List <SignalModelContext> signalsWithQuotes, string nameOfCompany)
        {
            string   jsonString      = JsonSerializer.ConvertCollectionOfObjectsToJsonString <SignalModelContext>(signalsWithQuotes);
            DateTime currentDateTime = DateTime.Now;
            string   dateTimeFormat  = "ddMMyyyy-HHmm";
            string   fileName        = nameOfCompany + "_" + currentDateTime.ToString(dateTimeFormat) + "-" +
                                       Convert.ToString((int)currentDateTime.Subtract(new DateTime(1970, 1, 1)).TotalSeconds) + "_prototypeObject";

            FileHelper.SaveJsonFile(Path.GetFullPath(Path.Combine(AppContext.BaseDirectory, $"..\\..\\..\\..\\StockExchangeAdvisor\\PrototypeObjects\\{fileName}.json")), jsonString);
        }
Example #2
0
        public override void GenerateAndPublishMessage(IModel channel, List <Signal> obtainedSignals)
        {
            //serializujemy oraz przekształcamy w tablicę bajtów
            var body = EncryptionHelper.StringToUtf8(JsonSerializer.ConvertCollectionOfObjectsToJsonString <Signal>(obtainedSignals));

            channel.BasicPublish(exchange: _exchange,
                                 routingKey: _queueSendTo,
                                 basicProperties: null,
                                 body: body);
            //oczekujemy na potwierdzenie, że przesyłka dotarła do exchange
            Console.WriteLine($"RabbitMQ Consumer sent obtained signals to Exchange.");
            channel.WaitForConfirmsOrDie();
        }
        public IActionResult CalculateTechnicalIndicator(IndicatorCalculationElementsWIndicatorType data)
        {
            try
            {
                List <Signal> obtainedSignals = data.TechnicalIndicator.GetSignals(data.Quotes, data.Parameters);
                string        jsonString      = JsonSerializer.ConvertCollectionOfObjectsToJsonString <Signal>(obtainedSignals);

                int newFileId;

                lock (_padlock)
                {
                    int filesCount = FileHelper.CountFilesInDirectory(GeneratedSignalsURL);
                    newFileId = (filesCount == 0 ? 0 : filesCount);
                    string fileName = $"signals_{newFileId}.json";
                    FileHelper.SaveJsonFile(GeneratedSignalsURL + fileName, jsonString);
                }

                return(StatusCode(201, newFileId));
            }
            catch (Exception e)
            {
                return(StatusCode(500, e));
            }
        }