- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我正在使用 pyalgotrade
作为交易策略,我想在列表中使用多个代码。
它现在的设置方式是,它为列表中的每个代码运行策略,但我想要它做的是将它们作为一个复合策略运行。
我该怎么做?
代码如下:
from pyalgotrade.tools import yahoofinance
from pyalgotrade import strategy
from pyalgotrade.barfeed import yahoofeed
from pyalgotrade.technical import stoch
from pyalgotrade import dataseries
from pyalgotrade.technical import ma
from pyalgotrade import technical
from pyalgotrade.technical import highlow
from pyalgotrade import talibext
from pyalgotrade.talibext import indicator
import numpy as np
import talib
testlist = ['aapl', 'msft', 'z']
class MyStrategy( strategy.BacktestingStrategy ):
def __init__( self, feed, instrument ):
strategy.BacktestingStrategy.__init__( self, feed )
self.__position = []
self.__instrument = instrument
self.setUseAdjustedValues( True )
self.__prices = feed[instrument].getPriceDataSeries()
self.__stoch = stoch.StochasticOscillator( feed[instrument], 20, dSMAPeriod = 3, maxLen = 3 )
def onBars( self, bars ):
self.__PPO = talibext.indicator.PPO( self.__prices, len( self.__prices ), 12, 26, matype = 1 )
try: slope = talib.LINEARREG_SLOPE( self.__PPO, 3 )[-1]
except Exception: slope = np.nan
bar = bars[self.__instrument]
self.info( "%s,%s,%s" % ( bar.getClose(), self.__PPO[-1], slope ) )
if self.__PPO[-1] is None:
return
for inst in self.__instrument:
print inst
#INSERT STRATEGY HERE
def run_strategy():
# Load the yahoo feed from the CSV file
instruments = ['aapl', 'msft', 'z']
feed = yahoofinance.build_feed(instruments,2015,2016, ".")
# Evaluate the strategy with the feed.
myStrategy = MyStrategy(feed, instruments)
myStrategy.run()
print "Final portfolio value: $%.2f" % myStrategy.getBroker().getEquity()
run_strategy()
最佳答案
您可以使用此示例作为交易多种工具的指南:http://gbeced.github.io/pyalgotrade/docs/v0.18/html/sample_statarb_erniechan.html
关于python - 如何在 Pyalgotrade 中使用多种工具创建复合策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41007429/
I'm trying to use PyAlogoTrade 's event profiler 但是我不想使用来自 的数据雅虎财经 ,我想用我自己的但是在中不知道怎么解析CSV ,其格式为: Tim
我正在尝试使用技术指标(随机),但此行却出现断言错误: self.__slow_stoch = stoch.StochasticOscillator(feed[instrument],self.__s
我想在 pyalgotrade 中回测交易策略,但我在提交止损订单时遇到问题。 在documentation它指出:头寸是用于下订单的更高级别的抽象。它们本质上是一对进出场订单,与手动下订单相比,可以
我正在尝试按照 PyAlgoTrade 网站的介绍使用给定的代码从雅虎财经下载数据。但我总是遇到错误。 这是网站:http://gbeced.github.io/pyalgotrade/docs/v0
我正在使用 pyalgotrade 作为交易策略,我想在列表中使用多个代码。 它现在的设置方式是,它为列表中的每个代码运行策略,但我想要它做的是将它们作为一个复合策略运行。 我该怎么做? 代码如下:
我正在尝试运行 pyalgotrade 的事件分析器。我正在使用自定义数据,当我使用默认策略/谓词“BuyOnGap”运行它时,它会起作用,但是当我尝试使用简单的自定义策略运行它时,它会抛出错误: T
我正在用pyalgotrade编写交易算法。我收到了上面的错误,似乎无法修复。我正在尝试使用“SLOW STOCHASTIC”,在解决此错误和使慢速随机变量起作用方面的任何帮助都将受到赞赏: 错误:
我是一名优秀的程序员,十分优秀!