Ejemplo n.º 1
0
        void OnOptionInfoEvent(dynamic Data)
        {
            try
            {
                int AlpariID = (int)Data.body.id;
                int ResultID = (int)Data.body.result_id;

                BinaryPosition pos = FindPositionByAlpariID(AlpariID);

                if (ResultID == TradeSettings.OptionResultsDictionary["win"])
                {
                    pos.ResultIsWin = true;
                }
                else if (ResultID == TradeSettings.OptionResultsDictionary["loss"])
                {
                    pos.ResultIsLoss = true;
                }
                else if (ResultID == TradeSettings.OptionResultsDictionary["loss"])
                {
                    pos.ResultIsParity = true;
                }

                pos.Status     = "Closed";
                pos.ClosePrice = (double)Data.body.expiry_rate.value;
                pos.CloseTime  = DateTime.UtcNow;

                BinaryPosition.Export(pos, ClosedPositionsFolder + "/" + pos.OriginalID);

                OpenPositions.Remove(pos);
            }
            catch (Exception e) { }
        }
Ejemplo n.º 2
0
        public void ReadAndSendPositions()
        {
            string Folder = RequestsToSendFolder;

            try
            {
                string[] files = Directory.GetFiles(Folder);

                foreach (string filename in files)
                {
                    try
                    {
                        BinaryPosition NewPos  = BinaryPosition.Import(filename);
                        BinaryPosition OpenPos = SendPosition(NewPos);
                        BinaryPosition.Export(OpenPos, RequestResultsFolder + "/" + OpenPos.OriginalID);
                    }
                    catch (Exception)
                    {
                        try
                        {
                            File.Delete(filename);
                        }
                        catch (Exception) { }

                        continue;
                    }
                }
            }
            catch (Exception) { }
        }