Example #1
0
        public static IList<double> CalcDIM(ISecurity source, IContext context, int period)
        {
            int count = source.Bars.Count;
            IList<double> diM = new double[count];

            var high = source.HighPrices;
            var low = source.LowPrices;

            var atr = Series.EMA(Series.TrueRange(source.Bars), period);

            for (int i = 1; i < count; i++)
            {
                var dmP = high[i] - high[i - 1];
                var dmM = low[i - 1] - low[i];
                if ((dmP < 0 && dmM < 0) || dmP == dmM)
                {
                    dmP = dmM = 0;
                }
                if (dmP > dmM)
                {
                    dmM = 0;
                }
                diM[i] = dmM;
            }
            diM = Series.EMA(diM, period);
            for (int i = 1; i < count; i++)
            {
                diM[i] = atr[i] == 0 ? 0 : diM[i] / atr[i];
            }
            return diM;
        }
 public PersonSearch(ISecurity security)
 {
     _security = security;
     _personDal = new PersonDal();
     _sourceMappingsDal = new SourceMappingsDal();
       //  _relationsDal = new RelationsDal();
 }
        public ClientUsingCredentials()
        {
            session = Diffusion.Sessions.Principal( "client" ).Password( "password" )
                .Open( "ws://diffusion.example.com:80" );

            security = session.GetSecurityFeature();
        }
        public LoginViewModel(IEventAggregator eventAggregator, ISecurity security)
        {
            EventAggregator = eventAggregator;
            _security = security;

            LoginCommand = new DelegateCommand(DoLogin);
        }
Example #5
0
 public SecurityTool( ISecurity objSecurity, ISecurityAction securityAction, IList roles )
 {
     _objSecurity = objSecurity;
     _securityString = objSecurity.Security;
     objAction = securityAction;
     _rolesAll = roles;
 }
        private void bindRoleActions( ISecurity f ) {

            IBlock sblock = getBlock( "sysroles" );

            SecurityTool tool = SecurityHelper.GetSecurityTool( f, ctx );

            IList actionList = tool.GetActionAll();
            bindList( "actions", "a", actionList );

            IList allRoles = tool.GetRoles();
            String lastRoleType = null;

            foreach (IRole role in allRoles) {

                sblock.Set( "role.Name", role.Name );


                bindCheckBoxList( tool, sblock, role );

                if (role.Role.GetType().FullName.Equals( lastRoleType ) == false) {
                    sblock.Set( "seperator", "<tr><td colspan=" + (actionList.Count + 1) + ">&nbsp;</td></tr>" );
                    lastRoleType = role.Role.GetType().FullName;
                }
                else {
                    sblock.Set( "seperator", "" );
                }

                sblock.Next();
            }
        }
 public FakeDataAccessLayer(ISecurity security)
 {
     securityLayer = security;
     audioLinks = new List<AudioLink>();
     imageLinks = new List<ImageLink>();
     experienceList = new List<Experience>();
 }
Example #8
0
 /// <summary>
 /// 获取加密类实例,单例实现,非线程安全
 /// </summary>
 /// <returns>单例</returns>
 public static ISecurity GetSecurity()
 {
     if(instance==null)
     {
        instance=new KeySecurity();
     }
     return instance;
 }
 public void Add(ISecurity data)
 {
     using (var file = SecurityFile.CreateOrOpen())
     {
         SecurityItem dataItem = data.Convert();
         file.Add(dataItem);
     }
 }
Example #10
0
 private FixedIncomeStripWithSecurity(FixedIncomeStrip originalStrip, Tenor resolvedTenor, DateTimeOffset maturity, ExternalId securityIdentifier, ISecurity security)
 {
     _resolvedTenor = resolvedTenor;
     _originalStrip = originalStrip;
     _maturity = maturity;
     _securityIdentifier = securityIdentifier;
     _security = security;
 }
Example #11
0
 /// <summary>
 /// 寻找出候选人
 /// </summary>
 /// <param name="security"></param>
 /// <returns></returns>
 public IEnumerable<Neo> FindCandidate(ISecurity security)
 {
     // 传入需要Key的描述信息
     // 获取各种类型的Key的集合
     // 将各种Key组合到Neo里面去。
     var keys = new KeyMaker().CreateKeys();
     Neo neo = new Neo(security, keys);
     return new List<Neo> { neo };
 }
Example #12
0
        public static Boolean Check( ControllerBase controller, ISecurity objSecurity ) {
            MvcContext ctx = controller.ctx;
            if (!hasAction( objSecurity, ctx )) {
                controller.echo( lang.get( "exNoPermission" ) );
                return false;
            }

            return true;
        }
Example #13
0
 public static IList<double> generateATR(IContext ctx, ISecurity source, int period)
 {
     return ctx.GetData(
         "ATR" + period.ToString(),
         new[] {period.ToString()}, delegate {
             return Series.AverageTrueRange(source.Bars, period);
         }
     );
 }
 public SourceSearch(ISecurity security)
 {
     _sourceDal = new SourceDal();
     _sourceTypesDal = new SourceTypesDal();
     _filesDal = new FilesDal();
     _sourceMappingParishsDal = new SourceMappingParishsDal();
     _smDal = new SourceMappingsDal();
     _security = security;
 }
Example #15
0
        private static Boolean hasAction( ISecurity objSecurity, MvcContext ctx ) {

            // 未提供权限配置的页面通过
            if (objSecurity == null) return true;

            SecurityTool securityTool = ForumSecurityService.GetSecurityTool( objSecurity, ctx );// objSecurity.SecurityTool;


            // 不需要权限管理的页面通过
            if (securityTool.IsForbiddenAction( ctx.route.getControllerAndActionPath() ) == false) return true;

            // 空页面——通过
            String currentPath = ctx.url.Path;
            if (strUtil.IsNullOrEmpty( currentPath )) return true;

            // 编辑权限例外:用户可以编辑自己的帖子

            // 只要系统角色,或论坛角色之一具有权限,则用户具有权限(当用户具有多重身份之时)

            // 1、获取用户的角色

            //系统角色
            SiteRole role = ((User)ctx.viewer.obj).Role;
            IList actions = securityTool.GetActionsByRole( role );
            if (hasAction_private( actions, ctx )) return true;

            // 2、获取用户在特定owner中的角色
            if (ctx.owner.obj.GetType() != typeof( Site )) {
                IRole roleInOwner = ctx.owner.obj.GetUserRole( ctx.viewer.obj );
                IList ownerRoleActions = securityTool.GetActionsByRole( roleInOwner );
                if (hasAction_private( ownerRoleActions, ctx )) return true;
            }

            // 3、获取用户的等级
            SiteRank rank = ((User)ctx.viewer.obj).Rank;
            if (rank.Id > 0) {
                actions = securityTool.GetActionsByRole( rank );
                if (hasAction_private( actions, ctx )) return true;
            }

            // 4、是否在论坛担任角色

            if (objSecurity is ForumBoard) {

                ModeratorService moderatorService = new ModeratorService();

                if (moderatorService.IsModerator( objSecurity as ForumBoard, (User)ctx.viewer.obj )) {
                    IList moderatorActions = securityTool.GetActionsByRole( ForumRole.Moderator );
                    if (hasAction_private( moderatorActions, ctx )) return true;
                }

            }

            return false;
        }
 public TestController2(IMarriagesDal iMarriagesDal,
     IMarriageWitnessesDal iMarriageWitnessesDal,
     ISourceDal iSourceDal,
     ISourceMappingsDal iSourceMappingsDal,
     IPersonDal iPersonDal,
     ISecurity iSecurity)
 {
     _marriageSearch = new MarriageSearch(iSecurity,
         iMarriagesDal,
         iMarriageWitnessesDal, iSourceDal, iSourceMappingsDal, iPersonDal);
 }
 public MarriageService(IMarriagesDal iMarriagesDal,
     IMarriageWitnessesDal iMarriageWitnessesDal,
     ISourceDal iSourceDal, 
     ISourceMappingsDal iSourceMappingsDal,
     IPersonDal iPersonDal,
     ISecurity iSecurity)
 {
     _marriageSearch = new MarriageSearch(iSecurity,
         iMarriagesDal,
         iMarriageWitnessesDal,iSourceDal, iSourceMappingsDal,iPersonDal);
 }
Example #18
0
        public void Update(ISecurity security)
        {
            SecurityRepository repository = new SecurityRepository(DataFiles.GetSecuritiesFile());
            repository.UpdateRange(new ISecurity[] { security });

            //using (var context = GetContext())
            //{
            //    var repository = new Repository<Security>(context);
            //    repository.Update(security.ToDataObject());
            //    repository.UnitOfWork.Commit();
            //}
        }
Example #19
0
        public static IList<double> generateADX(IContext ctx, ISecurity source, int period)
        {
            ADXFull generator = new ADXFull();
            generator.Context = ctx;
            generator.Period = period;

            return ctx.GetData(
                "ADX" + period.ToString(),
                new[] {period.ToString()}, delegate {
                    return generator.Execute(source);
                }
            );
        }
        public MyCouchCloudantServerClient(ServerConnectionInfo connectionInfo, MyCouchCloudantClientBootstrapper bootstrapper = null)
        {
            Ensure.That(connectionInfo, "connectionInfo").IsNotNull();

            IsDisposed = false;
            bootstrapper = bootstrapper ?? MyCouchCloudantClientBootstrappers.Default;

            Connection = bootstrapper.ServerConnectionFn(connectionInfo);
            Serializer = bootstrapper.SerializerFn();
            Databases = bootstrapper.DatabasesFn(Connection);
            Replicator = bootstrapper.ReplicatorFn(Connection);
            Security = bootstrapper.SecurityFn(Connection);
        }
Example #21
0
        public bool Exists(ISecurity security)
        {
            SecurityRepository repository = new SecurityRepository(DataFiles.GetSecuritiesFile());
            return repository.Exists(security);

            //// 设置查询条件
            //var spec = Specification<Security>.Eval(p => p.Code.Equals(security.Code));

            //using (var context = GetContext())
            //{
            //    var repository = new Repository<Security>(context);
            //    return repository.Exists(spec);
            //}
        }
 public MarriageSearch(ISecurity security, 
     IMarriagesDal iMarriagesDal,
     IMarriageWitnessesDal imarriageWitnessesDll,
     ISourceDal isourceDll,
     ISourceMappingsDal isourceMappingsDll,
     IPersonDal ipersonDal)
 {
     _security = security;
     _marriagesDll = iMarriagesDal;
     _marriageWitnessesDll = imarriageWitnessesDll;
     _sourceDll = isourceDll;
     _sourceMappingsDal = isourceMappingsDll;
     _personDal = ipersonDal;
 }
 public BatchController(ISourceTypesDal isSourceTypesDal,
                     ISecurity iSecurity,
                     IParishsDal parishsDal,
                     ISourceMappingsDal sourceMappingDal,
                     IPersonDal personDal,
                     ISourceDal sourceDal,
                     ISourceMappingParishsDal sourceMappingParishDal,
                     ISourceMappingsDal sourceMappingsDal,
                     IMarriagesDal marriagesDal,
                     IMarriageWitnessesDal mwits,
                     IBatchDal iBatch)
 {
     _batchSearch = new BatchSearch(new Security(new WebUser()),
         iBatch, parishsDal, sourceMappingDal, personDal, sourceDal, sourceMappingParishDal, sourceMappingsDal, marriagesDal, mwits);
 }
Example #24
0
 public BatchSearch(ISecurity security, IBatchDal iBatchDal, IParishsDal parishsDal,
                                                         ISourceMappingsDal sourceMappingDal,
                                                         IPersonDal personDal,        
                                                         ISourceDal sourceDal,
                                                         ISourceMappingParishsDal sourceMappingParishDal,
                                                         ISourceMappingsDal sourceMappingsDal,
                                                         IMarriagesDal marriagesDal,
                                                         IMarriageWitnessesDal mwits)
 {
     _security = security;
     _batchDal = iBatchDal;
     _parishsDal = parishsDal;
     _sourceDal = sourceDal;
     _sourceMappingParishDal = sourceMappingParishDal;
     _sourceMappingsDal = sourceMappingDal;
     _marriagesDal = marriagesDal;
     _sourceMappingDal = sourceMappingsDal;
     _personDal = personDal;
     _mwits = mwits;
 }
        public static SecurityTool GetSecurityTool( ISecurity f, MvcContext ctx ) {

            IList forumRoles = ForumRole.GetAll();

            IList ownerRoles;
            if (ctx.owner.obj.GetType() != typeof( Site ))
                ownerRoles = ctx.owner.obj.GetRoles();
            else
                ownerRoles = new ArrayList();

            IList siteRoles = new SiteRoleService().GetRoleAndRank();

            IList allRoles = new RoleMerger()
                .Add( forumRoles )
                .Add( ownerRoles )
                .Add( siteRoles )
                .GetResults();

            SecurityTool tool = new SecurityTool( f, new SecurityAction(), allRoles );
            return tool;
        }
Example #26
0
        //----------------------------------------------------------------------
        public static Boolean HasAction( User user, ISecurity objSecurity, ISecurityAction action, MvcContext ctx )
        {
            SecurityTool securityTool = ForumSecurityService.GetSecurityTool( objSecurity, ctx );

            Boolean hasAction = securityTool.HasAction( user.Role, action );
            if (hasAction) return true;

            hasAction = securityTool.HasAction( user.Rank, action );
            if (hasAction) return true;

            if (ctx.owner.obj.GetType() != typeof( Site )) {
                IRole roleInOwner = ctx.owner.obj.GetUserRole( user );
                hasAction = securityTool.HasAction( roleInOwner, action );
                if (hasAction) return true;
            }

            if (new ModeratorService().IsModerator( objSecurity as ForumBoard, user )) {
                hasAction = securityTool.HasAction( ForumRole.Moderator, action );
                if (hasAction) return true;
            }

            return false;
        }
Example #27
0
 public PrivacyLevelValidator(ILogger logger, IPrivacyLevelValidatorMapper mapper, IDataUnitOfWork unitOfWork, ISecurity currentSecurity)
     : base(logger, mapper, unitOfWork, currentSecurity)
 {
 }
        public IList <double> Execute(ISecurity source1, ISecurity source2)
        {
            ISecurity      security1    = source1.CompressTo(Interval.D1, 0, 1440, 600);
            ISecurity      security2    = source2.CompressTo(Interval.D1, 0, 1440, 600);
            int            count1       = source1.Bars.Count;
            IList <double> closePrices1 = security1.GetClosePrices(this.Context);
            IList <double> closePrices2 = security2.GetClosePrices(this.Context);
            int            count2       = security1.Bars.Count;
            int            count3       = security2.Bars.Count;
            IList <double> doubleList   = (IList <double>)(this.Context?.GetArray <double>(count1) ?? new double[count1]);
            int            index1       = 0;

            for (int index2 = 0; index2 < count1; ++index2)
            {
                DateTime date1 = source1.Bars[index2].Date;
                DateTime date2 = date1.Date;
                while (true)
                {
                    int num;
                    if (index1 < count2)
                    {
                        date1 = security2.Bars[index1].Date;
                        num   = date1.Date < date2 ? 1 : 0;
                    }
                    else
                    {
                        num = 0;
                    }
                    if (num != 0)
                    {
                        doubleList[index2] = this.ParKoeff * closePrices1[index1] * this.ParLimitPrc * closePrices2[index1] / this.ParBaseGO / this.ParStepMin * (1.0 + closePrices2[index1] / this.ParCalcPrice);
                        ++index1;
                    }
                    else
                    {
                        break;
                    }
                }
                int num1;
                if (index2 + 1 < count1)
                {
                    date1 = source1.Bars[index2 + 1].Date;
                    if (date1.Date == date2)
                    {
                        num1 = 1;
                        goto label_11;
                    }
                }
                num1 = index1 == count2 ? 1 : 0;
label_11:
                if (num1 != 0)
                {
                    --index1;
                }
                if (index1 <= 0)
                {
                    index1             = 0;
                    doubleList[index2] = this.ParKoeff * closePrices1[index1] * this.ParLimitPrc * closePrices2[index1] / this.ParBaseGO / this.ParStepMin * (1.0 + closePrices2[index1] / this.ParCalcPrice);
                }
            }
            return(doubleList);
        }
 public TransparentAdministrationMonitorLogService(IDataUnitOfWork unitOfWork, ILogger logger, IValidatorService validatorService,
                                                   ITransparentAdministrationMonitorLogRuleset transparentAdministrationMonitorLogRuleset, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(unitOfWork, logger, validatorService, transparentAdministrationMonitorLogRuleset, mapperUnitOfWork, security)
 {
     _unitOfWork = unitOfWork;
 }
 public UserStoreStub(ISecurity platformSecurityApi, IMemberService memberService, IMemoryCache memoryCache)
 {
     _platformSecurityApi = platformSecurityApi;
     _memoryCache         = memoryCache;
     _memberService       = memberService;
 }
Example #31
0
        protected IList <double> CalculateAll(IOption opt, ISecurity sec)
        {
            int len = sec.Bars.Count;

            if (len <= 0)
            {
                return(Constants.EmptyListDouble);
            }

            double[] res     = Context.GetArray <double>(len);
            var      history = LocalHistory;

            bool      exceptionFlag = false;
            Exception lastEx = null;
            DateTime  prevBarDate = new DateTime(), prevExpDate = new DateTime();

            for (int m = 0; m < len - 1; m++)
            {
                DateTime now = sec.Bars[m].Date;

                double time;
                if (history.TryGetValue(now, out time))
                {
                    res[m] = time;
                }
                else
                {
                    time = Constants.NaN;
                    try
                    {
                        double timeAsDays, timeAsYears;
                        time = EstimateTimeForGivenBar(opt, sec, sec.Bars[m].Date, prevBarDate, prevExpDate,
                                                       out timeAsDays, out timeAsYears, out prevBarDate, out prevExpDate);
                        history[now] = time;
                    }
                    catch (Exception ex)
                    {
                        lastEx        = ex;
                        exceptionFlag = true;
                    }
                    res[m] = time;
                }
            }

            if (exceptionFlag && (lastEx != null))
            {
                m_context.Log("[TimeToExpiry] " + lastEx, MessageType.Error, true);
            }

            lastEx        = null;
            exceptionFlag = false;
            if (len > 0)
            {
                double time = Constants.NaN, timeAsDays = Constants.NaN;
                try
                {
                    double timeAsYears;
                    time = EstimateTimeForGivenBar(opt, sec, sec.Bars[len - 1].Date, prevBarDate, prevExpDate,
                                                   out timeAsDays, out timeAsYears, out prevBarDate, out prevExpDate);
                }
                catch (Exception ex)
                {
                    lastEx        = ex;
                    exceptionFlag = true;
                }
                res[len - 1] = time;
                // Принято решение, что для удобства пользователя время на UI показывается всегда в днях.
                double displayValue = timeAsDays;
                m_dT.Value = displayValue;
            }

            if (exceptionFlag && (lastEx != null))
            {
                m_context.Log("[TimeToExpiry] " + lastEx, MessageType.Error, true);
            }

            //return new ReadOnlyCollection<double>(times);
            return(res);
        }
 public CollaborationUserService(IDataUnitOfWork unitOfWork, ILogger logger, IValidatorService validationService,
                                 ICollaborationRuleset collaborationRuleset, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(unitOfWork, logger, validationService, collaborationRuleset, mapperUnitOfWork, security)
 {
 }
Example #33
0
        protected ITradeHistogramsCache GetTradeHistogramsCache(ISecurity security)
        {
            var result = TradeHistogramsCaches.Instance.GetTradeHistogramsCache(Context, security, CombinePricesCount);

            return(result);
        }
Example #34
0
 //-----------------------------------------------------------------------------------------------
 private void bindForm( ForumTopic topic, ISecurity board, ForumPost lastPost )
 {
     IBlock formBlock = getBlock( "form" );
     //if (topic.IsLocked == 1) return;
     //ISecurityAction replyAction = ForumAction.Get( new PostController().ReplyPost, ctx.route.getRootNamespace() );
     //if (PermissionUtil.HasAction( (User)ctx.viewer.obj, board, replyAction, ctx ))
     bindFormNew( topic, lastPost, formBlock );
 }
Example #35
0
 public async Task <SecurityInfo> GetSecurityInfo(ISecurity security)
 {
     return(await GetSecurityInfo(security.ClassCode, security.SecCode));
 }
Example #36
0
        private void Recalculate(ISecurity sec)
        {
            //Context.Log(String.Format("[Heartbeat.Execute ( ID:{0} )] I'm checking timer settings.", m_id), MessageType.Warning, false);

            CallState timerState = null;
            string    cashKey    = VariableId + "_timerState";

            {
                object localObj = Context.LoadObject(cashKey, false);
                timerState = localObj as CallState;
                // PROD-3970 - 'Важный' объект
                if (timerState == null)
                {
                    var container = localObj as NotClearableContainer;
                    if ((container != null) && (container.Content != null))
                    {
                        timerState = container.Content as CallState;
                    }
                }
            }

            //m_timer = Context.LoadObject(VariableId + "m_timer") as IThreadingTimerProfiler;
            if (timerState == null)
            {
                string msg = String.Format("[Heartbeat.Execute ( ID:{0} )] Preparing new timer for agent '{1}'...",
                                           m_id, Context.Runtime.TradeName);
                Context.Log(msg, MessageType.Info, false);

                timerState = new CallState(m_id, Context, sec.SecurityDescription, m_onlyAtTradingSession);
                var timer = TimerFactory.CreateThreadingTimer(Recalculate, timerState, m_delayMs, Timeout.Infinite);
                // Обязательно дозаполняем ссылку на таймер
                timerState.Timer = timer;

                var container = new NotClearableContainer(timerState);
                Context.StoreObject(cashKey, container, false);
            }
            else if (timerState.Timer == null)
            {
                // PROD-5427 - Добавляю счетчик этого аварийного события и логгирую
                int problemCounter = 0;
                if (s_problemCounters.ContainsKey(Context.Runtime.TradeName))
                {
                    problemCounter = s_problemCounters[Context.Runtime.TradeName];
                }

                s_problemCounters[Context.Runtime.TradeName] = Interlocked.Increment(ref problemCounter);

                string msg = String.Format("[Heartbeat.Execute ( ID:{0} )] Timer is null in agent '{1}'. Problem counter: {2}",
                                           m_id, Context.Runtime.TradeName, problemCounter);
                Context.Log(msg, MessageType.Warning, false);

                if (problemCounter > 3)
                {
                    // Если проблема систематически повторяется -- выбрасываю ассерт для дальнейшего анализа ситуации
                    Contract.Assert(timerState.Timer != null, msg);
                }
            }
            else
            {
                //Contract.Assert(timerState.Timer != null, "Почему вдруг (timerState.Timer==null) ??");

                // Если при изменении скрипта пересоздается агент, то контекст становится невалидным?
                if (Object.ReferenceEquals(Context, timerState.CallContext))
                {
                    // Если контекст совпадает, то обновляем режим работы...
                    timerState.OnlyAtTradingSession = m_onlyAtTradingSession;
                    // и перезапускаем таймер
                    try
                    {
                        timerState.Timer.Change(m_delayMs, Timeout.Infinite);
                        // PROD-5427 - При штатной работе блока обнуляю счетчик проблем
                        s_problemCounters[Context.Runtime.TradeName] = 0;
                    }
                    catch (ObjectDisposedException)
                    {
                        // Если таймер уже убит, то надо создать новый
                        timerState.Timer = null;
                        timerState       = null;

                        string msg = String.Format("[Heartbeat.Execute ( ID:{0} )] Replacing DISPOSED timer for agent '{1}'...",
                                                   m_id, Context.Runtime.TradeName);
                        Context.Log(msg, MessageType.Warning, false);

                        // Создаём новый таймер. При этом используем НОВЫЙ m_id
                        timerState = new CallState(m_id, Context, sec.SecurityDescription, m_onlyAtTradingSession);
                        var timer = TimerFactory.CreateThreadingTimer(Recalculate, timerState, m_delayMs, Timeout.Infinite);
                        // Обязательно дозаполняем ссылку на таймер
                        timerState.Timer = timer;

                        var container = new NotClearableContainer(timerState);
                        Context.StoreObject(cashKey, container, false);
                    }
                }
                else
                {
                    // Если по какой-то причине изменился контекст, то создаём новый таймер...
                    timerState.Timer.Dispose();
                    timerState.Timer = null;
                    timerState       = null;

                    string msg = String.Format("[Heartbeat.Execute ( ID:{0} )] Replacing timer for agent '{1}'...",
                                               m_id, Context.Runtime.TradeName);
                    Context.Log(msg, MessageType.Warning, false);

                    // Создаём новый таймер. При этом используем НОВЫЙ m_id
                    timerState = new CallState(m_id, Context, sec.SecurityDescription, m_onlyAtTradingSession);
                    var timer = TimerFactory.CreateThreadingTimer(Recalculate, timerState, m_delayMs, Timeout.Infinite);
                    // Обязательно дозаполняем ссылку на таймер
                    timerState.Timer = timer;

                    var container = new NotClearableContainer(timerState);
                    Context.StoreObject(cashKey, container, false);
                }
            }
        }
 public async Task<bool> IsSubscribed(ISecurity security) {
     return await IsSubscribed(security.ClassCode, security.SecCode);
 }
 public DocumentUnitRoleService(IDataUnitOfWork unitOfWork, ILogger logger, IValidatorService validationService,
                                IDocumentUnitRuleset documentUnitRuleset, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(unitOfWork, logger, validationService, documentUnitRuleset, mapperUnitOfWork, security)
 {
     _unitOfWork = unitOfWork;
     _logger     = logger;
 }
Example #39
0
 public FascicleFolderssController(IFascicleFolderService service, IDataUnitOfWork unitOfWork, ILogger logger, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(service, unitOfWork, logger, security)
 {
     _logger           = logger;
     _unitOfWork       = unitOfWork;
     _mapperUnitOfwork = mapperUnitOfWork;
 }
Example #40
0
 public DocumentSeriesController(IDocumentSeriesService service, IDataUnitOfWork unitOfWork, ILogger logger, ISecurity security)
     : base(service, unitOfWork, logger, security)
 {
     _unitOfWork = unitOfWork;
     _logger     = logger;
 }
 public ProtocolContactService(IDataUnitOfWork unitOfWork, ILogger logger, IValidatorService validationService,
                               IProtocolRuleset protocolRuleset, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(unitOfWork, logger, validationService, protocolRuleset, mapperUnitOfWork, security)
 {
     _unitOfWork = unitOfWork;
     _logger     = logger;
 }
Example #42
0
 public IList <double> Execute(ISecurity source)
 {
     return(Series.TypicalPrice(source.Bars, Context));
 }
Example #43
0
        public DeploymentActivityQueueManager(IDeploymentActivityRepo repo, IFailedDeploymentActivityRepo failedRepo,
                                              ICompletedDeploymentActivityRepo completedRepo, IDeploymentActionEventHubSettings settings, IAdminLogger logger,
                                              IAppConfig appConfig, IDependencyManager depmanager, ISecurity security)
            : base(logger, appConfig, depmanager, security)
        {
            _repo          = repo;
            _failedRepo    = failedRepo;
            _completedRepo = completedRepo;

            _settings = settings;

            var bldr = new EventHubsConnectionStringBuilder(string.Format(EhConnectionString, _settings.DeploymentActivityEventHubConnection.Name, _settings.DeploymentActivityEventHubConnection.AccessKey))
            {
                EntityPath = _settings.DeploymentActivityHubName
            };

            _eventHubClient = EventHubClient.CreateFromConnectionString(bldr.ToString());
        }
 public ProtocolRoleUserValidator(ILogger logger, IProtocolRoleUserValidatorMapper mapper, IDataUnitOfWork unitOfWork, ISecurity currentSecurity)
     : base(logger, mapper, unitOfWork, currentSecurity)
 {
 }
 public SolutionManager(ISolutionRepo deploymentRepo, IDeviceConfigurationManager deviceConfigManager, IPipelineModuleManager pipelineModuleManager,
                        ISolutionVersionRepo solutionVersionRepo, IAdminLogger logger, IAppConfig appConfig, IDependencyManager depmanager, ISecurity security) :
     base(logger, appConfig, depmanager, security)
 {
     _deploymentRepo        = deploymentRepo;
     _deviceConfigManager   = deviceConfigManager;
     _pipelineModuleManager = pipelineModuleManager;
     _solutionVersionRepo   = solutionVersionRepo;
 }
Example #46
0
 public IList <double> Execute(ISecurity source)
 {
     return(Series.CCI(source.Bars, Period, Context));
 }
Example #47
0
 public IncrementalValidator(ILogger logger, IIncrementalValidatorMapper mapper, IDataUnitOfWork unitOfWork, ISecurity currentSecurity)
     : base(logger, mapper, unitOfWork, currentSecurity)
 {
 }
Example #48
0
 public IList <double> Execute(ISecurity source)
 {
     return(Series.AverageTrueRange(source.Bars, Period, Context));
 }
Example #49
0
        private double EstimateTimeForGivenBar(IOption opt, ISecurity sec, DateTime now, DateTime prevBarDate, DateTime prevExpDate,
                                               out double timeAsDays, out double timeAsYears, out DateTime barDate, out DateTime expDate)
        {
            DateTime curDate;

            #region Get current date
            switch (m_dateMode)
            {
            case CurrentDateMode.FixedDate:
                curDate = m_fixedDate;
                break;

            case CurrentDateMode.CurrentDate:
            {
                //IDataBar bar = sec.Bars[j];
                curDate = now.Date;
            }
            break;

            case CurrentDateMode.Tomorrow:
                curDate = now.Date.AddDays(1);
                break;

            case CurrentDateMode.NextWorkingDay:
                curDate = now.Date.AddDays(1);
                while (!CalendarWithoutHolidays.Russia.IsWorkingDay(curDate))
                {
                    curDate = curDate.AddDays(1);
                }
                break;

            case CurrentDateMode.NextWeek:
                curDate = now.Date.AddDays(7);
                break;

            default:
                throw new NotImplementedException("CurDateMode:" + m_dateMode);
            }
            #endregion Get current date

            //DateTime today = sec.Bars[j].Date;
            DateTime today = now.Date;

            // Если дата прежняя, то и дата экспирации ещё не должна измениться
            if (today == prevBarDate)
            {
                barDate = today;
                expDate = prevExpDate;
            }
            //else if ((prevExpDate - prevBarDate).TotalDays > 1) // А если бары недельные??? или месячные???
            else
            {
                barDate = today;
                #region Get expiration date
                switch (m_expiryMode)
                {
                case ExpiryMode.FixedExpiry:
                    expDate = m_expirationDate;
                    break;

                case ExpiryMode.FirstExpiry:
                {
                    if (opt == null)
                    {
                        expDate = sec.SecurityDescription.ExpirationDate;
                    }
                    else
                    {
                        IOptionSeries optSer = (from ser in opt.GetSeries()
                                                where (today <= ser.ExpirationDate.Date)
                                                orderby ser.ExpirationDate ascending
                                                select ser).FirstOrDefault();
                        // Если все серии уже умерли, вернуть последнюю, чтобы гарантировать возврат даты
                        if (optSer == null)
                        {
                            optSer = (from ser in opt.GetSeries() orderby ser.ExpirationDate descending select ser).First();
                        }
                        expDate = optSer.ExpirationDate;
                    }
                }
                break;

                case ExpiryMode.LastExpiry:
                {
                    if (opt == null)
                    {
                        expDate = sec.SecurityDescription.ExpirationDate;
                    }
                    else
                    {
                        IOptionSeries optSer = (from ser in opt.GetSeries()
                                                where (today <= ser.ExpirationDate.Date)
                                                orderby ser.ExpirationDate descending
                                                select ser).FirstOrDefault();
                        // Если все серии уже умерли, вернуть последнюю, чтобы гарантировать возврат даты
                        if (optSer == null)
                        {
                            optSer = (from ser in opt.GetSeries() orderby ser.ExpirationDate descending select ser).First();
                        }
                        expDate = optSer.ExpirationDate;
                    }
                }
                break;

                case ExpiryMode.ExpiryByNumber:
                {
                    if (opt == null)
                    {
                        expDate = sec.SecurityDescription.ExpirationDate;
                    }
                    else
                    {
                        IOptionSeries[] optSers = (from ser in opt.GetSeries()
                                                   where (today <= ser.ExpirationDate.Date)
                                                   orderby ser.ExpirationDate ascending
                                                   select ser).ToArray();
                        int ind = Math.Min(m_seriesIndex - 1, optSers.Length - 1);
                        ind = Math.Max(ind, 0);
                        IOptionSeries optSer;
                        // Если все серии уже умерли, вернуть последнюю, чтобы гарантировать возврат даты
                        if (optSers.Length == 0)
                        {
                            optSer = (from ser in opt.GetSeries() orderby ser.ExpirationDate descending select ser).First();
                        }
                        else
                        {
                            optSer = optSers[ind];
                        }
                        expDate = optSer.ExpirationDate;
                    }
                }
                break;

                default:
                    throw new NotImplementedException("ExpirationMode:" + m_expiryMode);
                }
                #endregion Get expiration date
            }

            // Грубое решение для определения точного времени экспирации
            if (m_expiryMode != ExpiryMode.FixedExpiry)
            {
                expDate = expDate.Date + m_expirationTime;
            }

            // Просто сдвигаю текущую дату?
            double time = GetDt(expDate, now + m_dateShift, m_tRemainMode, m_useDays, out timeAsDays, out timeAsYears);
            return(time);
        }
Example #50
0
 public ConservationsController(ILogger logger, IConservationService service, IDataUnitOfWork unitOfWork, ISecurity security, IMapperUnitOfWork mapperUnitOfWork)
     : base(service, unitOfWork, logger, security)
 {
     _logger           = logger;
     _unitOfWork       = unitOfWork;
     _mapperUnitOfWork = mapperUnitOfWork;
 }
Example #51
0
 public DocumentSeriesItemLinkValidator(ILogger logger, IDocumentSeriesItemLinkValidatorMapper mapper, IDataUnitOfWork unitOfWork, ISecurity currentSecurity)
     : base(logger, mapper, unitOfWork, currentSecurity)
 {
 }
 public CustomUserManager(IUserStore <User> userStore, IStoreModule storeApi, IStorefrontSecurity commerceCoreApi, ISecurity platformSecurityApi, IOptions <IdentityOptions> optionsAccessor, IPasswordHasher <User> passwordHasher,
                          IEnumerable <IUserValidator <User> > userValidators, IEnumerable <IPasswordValidator <User> > passwordValidators,
                          ILookupNormalizer keyNormalizer, IdentityErrorDescriber errors, IServiceProvider services, ILogger <UserManager <User> > logger, IMemoryCache memoryCache)
     : base(userStore, optionsAccessor, passwordHasher, userValidators, passwordValidators, keyNormalizer, errors, services, logger)
 {
     _storeApi            = storeApi;
     _commerceCoreApi     = commerceCoreApi;
     _platformSecurityApi = platformSecurityApi;
     _memoryCache         = memoryCache;
 }
Example #53
0
 public Upload(IParamaters paramaters, IHostingEnvironment environment, ISecurity security)
 {
     _paramaters  = paramaters;
     _environment = environment;
     _security    = security;
 }
 public DocumentSeriesItemLinkService(IDataUnitOfWork unitOfWork, ILogger logger, IValidatorService validationService,
                                      IDocumentSeriesRuleset documentSeriesRuleset, IMapperUnitOfWork mapperUnitOfWork, ISecurity security)
     : base(unitOfWork, logger, validationService, documentSeriesRuleset, mapperUnitOfWork, security)
 {
 }
Example #55
0
 public SharedConnectionManager(ISharedConnectionRepo sharedConnectionRepo, IAdminLogger logger, ISecureStorage secureStorage,
                                IAppConfig appConfig, IDependencyManager depmanager, ISecurity security) : base(logger, appConfig, depmanager, security)
 {
     _sharedConnectionRepo = sharedConnectionRepo;
     _secureStorage        = secureStorage;
 }
Example #56
0
 public BalanceBarHandler(ISecurity source)
 {
     this.source = source;
 }
Example #57
0
 private void SaveData(ISecurity data)
 {
     try
     {
         // 检查是否已经存在记录
         if (_saveDataService.Exists(data))
         {
             // 如果已经存在就更新
             _saveDataService.Update(data);
         }
         else
         {
             // 不存在就添加
             _saveDataService.Add(data);
         }
     }
     catch (Exception ex)
     {
         LogHelper.Logger.WriteLine("Save Security data error.", this.ServiceName);
         LogHelper.Logger.WriteLine(ex.ToString(), this.ServiceName);
     }
 }
 public DocumentSeriesItemValidator(ILogger logger, IDocumentSeriesItemValidatorMapper mapper, IDataUnitOfWork unitOfWork, ISecurity currentSecurity)
     : base(logger, mapper, unitOfWork, currentSecurity)
 {
     DocumentSeriesItemLogs = new HashSet <DocumentSeriesItemLog>();
 }
Example #59
0
 public Security(ISecurity securityToUse)
 {
     internalSecurity = securityToUse;
 }
Example #60
0
 public WorkflowRepositoriesController(IWorkflowRepositoryService service, IDataUnitOfWork unitOfWork, ILogger logger, ISecurity security)
     : base(service, unitOfWork, logger, security)
 {
     _logger     = logger;
     _unitOfWork = unitOfWork;
 }