Beispiel #1
0
 def __call__(self,stocks,*args,**kwargs):
     sector = kwargs.get('sector',CLOSE)        #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sectorb = kwargs.get('sectorb',CLOSE)        #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sdatas = extract_collect(stocks,sector)
     sdatasb = extract_collect(stocks,sectorb)
     #print 'sdatas:',sdatas,'...'
     result = self.func(sdatas,sdatasb,*args,**kwargs)
     #print datas
     return result
Beispiel #2
0
 def __call__(self, stocks, *args, **kwargs):
     sector = kwargs.get(
         'sector', CLOSE
     )  #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sectorb = kwargs.get(
         'sectorb', CLOSE
     )  #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sdatas = extract_collect(stocks, sector)
     sdatasb = extract_collect(stocks, sectorb)
     #print 'sdatas:',sdatas,'...'
     result = self.func(sdatas, sdatasb, *args, **kwargs)
     #print datas
     return result
Beispiel #3
0
 def _dispatch(self,name,catalog,sector=CLOSE,*args,**kwargs):
     sdatas = extract_collect(catalog.stocks,sector)
     datas = self.func(sdatas,*args,**kwargs)
     #print datas
     for s,data in zip(catalog.stocks,datas):
         s.__dict__.setdefault(name,{})[catalog] = data  #这样,这个dict的item就是(catalog,data)
     return datas
Beispiel #4
0
 def _dispatch(self, name, catalog, sector=CLOSE, *args, **kwargs):
     sdatas = extract_collect(catalog.stocks, sector)
     datas = self.func(sdatas, *args, **kwargs)
     #print datas
     for s, data in zip(catalog.stocks, datas):
         s.__dict__.setdefault(
             name, {})[catalog] = data  #这样,这个dict的item就是(catalog,data)
     return datas
Beispiel #5
0
 def __call__(self,name,stocks,*args,**kwargs):
     sector = kwargs.get('sector',CLOSE)        #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sdatas = extract_collect(stocks,sector)
     #print 'sdatas:',sdatas,'...'
     datas = self.func(sdatas,*args,**kwargs)
     #print datas
     for s,data in zip(stocks,datas):
         s.__dict__[name] = data
     return datas
Beispiel #6
0
 def __call__(self, name, stocks, *args, **kwargs):
     sector = kwargs.get(
         'sector', CLOSE
     )  #默认参数的另一种方法,避免对内部func位置参数的污染(否则为了向func提供参数,必须先明确提供sector参数,或者使用关键字方式指定func的参数,而不能使用位置方式[会被优先当作sector])
     sdatas = extract_collect(stocks, sector)
     #print 'sdatas:',sdatas,'...'
     datas = self.func(sdatas, *args, **kwargs)
     #print datas
     for s, data in zip(stocks, datas):
         s.__dict__[name] = data
     return datas