Merge branch 'v2.0.1-DEV' of https://github.com/vnpy/vnpy into v2.0.1-DEV
This commit is contained in:
commit
9b216c1668
@ -13,7 +13,7 @@ from vnpy.app.cta_strategy import (
|
|||||||
class BollChannelStrategy(CtaTemplate):
|
class BollChannelStrategy(CtaTemplate):
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
author = '用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
boll_window = 18
|
boll_window = 18
|
||||||
boll_dev = 3.4
|
boll_dev = 3.4
|
||||||
@ -32,10 +32,10 @@ class BollChannelStrategy(CtaTemplate):
|
|||||||
long_stop = 0
|
long_stop = 0
|
||||||
short_stop = 0
|
short_stop = 0
|
||||||
|
|
||||||
parameters = ['boll_window', 'boll_dev', 'cci_window',
|
parameters = ["boll_window", "boll_dev", "cci_window",
|
||||||
'atr_window', 'sl_multiplier', 'fixed_size']
|
"atr_window", "sl_multiplier", "fixed_size"]
|
||||||
variables = ['boll_up', 'boll_down', 'cci_value', 'atr_value',
|
variables = ["boll_up", "boll_down", "cci_value", "atr_value",
|
||||||
'intra_trade_high', 'intra_trade_low', 'long_stop', 'short_stop']
|
"intra_trade_high", "intra_trade_low", "long_stop", "short_stop"]
|
||||||
|
|
||||||
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
||||||
""""""
|
""""""
|
||||||
|
@ -11,7 +11,7 @@ from vnpy.app.cta_strategy import (
|
|||||||
|
|
||||||
|
|
||||||
class DoubleMaStrategy(CtaTemplate):
|
class DoubleMaStrategy(CtaTemplate):
|
||||||
author = '用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
fast_window = 10
|
fast_window = 10
|
||||||
slow_window = 20
|
slow_window = 20
|
||||||
@ -22,8 +22,8 @@ class DoubleMaStrategy(CtaTemplate):
|
|||||||
slow_ma0 = 0.0
|
slow_ma0 = 0.0
|
||||||
slow_ma1 = 0.0
|
slow_ma1 = 0.0
|
||||||
|
|
||||||
parameters = ['fast_window', 'slow_window']
|
parameters = ["fast_window", "slow_window"]
|
||||||
variables = ['fast_ma0', 'fast_ma1', 'slow_ma0', 'slow_ma1']
|
variables = ["fast_ma0", "fast_ma1", "slow_ma0", "slow_ma1"]
|
||||||
|
|
||||||
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
||||||
""""""
|
""""""
|
||||||
|
@ -14,13 +14,13 @@ from vnpy.app.cta_strategy import (
|
|||||||
class DualThrustStrategy(CtaTemplate):
|
class DualThrustStrategy(CtaTemplate):
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
author = u'用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
fixed_size = 1
|
fixed_size = 1
|
||||||
k1 = 0.4
|
k1 = 0.4
|
||||||
k2 = 0.6
|
k2 = 0.6
|
||||||
|
|
||||||
barList = []
|
bars = []
|
||||||
|
|
||||||
day_open = 0
|
day_open = 0
|
||||||
day_high = 0
|
day_high = 0
|
||||||
@ -34,8 +34,8 @@ class DualThrustStrategy(CtaTemplate):
|
|||||||
long_entered = False
|
long_entered = False
|
||||||
short_entered = False
|
short_entered = False
|
||||||
|
|
||||||
parameters = ['k1', 'k2', "fixed_size"]
|
parameters = ["k1", "k2", "fixed_size"]
|
||||||
variables = ['range', 'long_entry', 'short_entry', 'exit_time']
|
variables = ["range", "long_entry", "short_entry", "exit_time"]
|
||||||
|
|
||||||
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
||||||
""""""
|
""""""
|
||||||
@ -45,7 +45,7 @@ class DualThrustStrategy(CtaTemplate):
|
|||||||
|
|
||||||
self.bg = BarGenerator(self.on_bar)
|
self.bg = BarGenerator(self.on_bar)
|
||||||
self.am = ArrayManager()
|
self.am = ArrayManager()
|
||||||
self.barList = []
|
self.bars = []
|
||||||
|
|
||||||
def on_init(self):
|
def on_init(self):
|
||||||
"""
|
"""
|
||||||
@ -78,12 +78,12 @@ class DualThrustStrategy(CtaTemplate):
|
|||||||
"""
|
"""
|
||||||
self.cancel_all()
|
self.cancel_all()
|
||||||
|
|
||||||
self.barList.append(bar)
|
self.bars.append(bar)
|
||||||
if len(self.barList) <= 2:
|
if len(self.bars) <= 2:
|
||||||
return
|
return
|
||||||
else:
|
else:
|
||||||
self.barList.pop(0)
|
self.bars.pop(0)
|
||||||
last_bar = self.barList[-2]
|
last_bar = self.bars[-2]
|
||||||
|
|
||||||
if last_bar.datetime.date() != bar.datetime.date():
|
if last_bar.datetime.date() != bar.datetime.date():
|
||||||
if self.day_high:
|
if self.day_high:
|
||||||
|
@ -134,7 +134,7 @@ class MaSignal(CtaSignal):
|
|||||||
class MultiSignalStrategy(TargetPosTemplate):
|
class MultiSignalStrategy(TargetPosTemplate):
|
||||||
""""""
|
""""""
|
||||||
|
|
||||||
author = '用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
rsi_window = 14
|
rsi_window = 14
|
||||||
rsi_level = 20
|
rsi_level = 20
|
||||||
@ -145,9 +145,9 @@ class MultiSignalStrategy(TargetPosTemplate):
|
|||||||
|
|
||||||
signal_pos = {}
|
signal_pos = {}
|
||||||
|
|
||||||
parameters = ['rsi_window', 'rsi_level', 'cci_window',
|
parameters = ["rsi_window", "rsi_level", "cci_window",
|
||||||
'cci_level', 'fast_window', 'slow_window']
|
"cci_level", "fast_window", "slow_window"]
|
||||||
variables = ['signal_pos', 'target_pos']
|
variables = ["signal_pos", "target_pos"]
|
||||||
|
|
||||||
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
||||||
""""""
|
""""""
|
||||||
@ -210,9 +210,9 @@ class MultiSignalStrategy(TargetPosTemplate):
|
|||||||
|
|
||||||
def calculate_target_pos(self):
|
def calculate_target_pos(self):
|
||||||
""""""
|
""""""
|
||||||
self.signal_pos['rsi'] = self.rsi_signal.get_signal_pos()
|
self.signal_pos["rsi"] = self.rsi_signal.get_signal_pos()
|
||||||
self.signal_pos['cci'] = self.cci_signal.get_signal_pos()
|
self.signal_pos["cci"] = self.cci_signal.get_signal_pos()
|
||||||
self.signal_pos['ma'] = self.ma_signal.get_signal_pos()
|
self.signal_pos["ma"] = self.ma_signal.get_signal_pos()
|
||||||
|
|
||||||
target_pos = 0
|
target_pos = 0
|
||||||
for v in self.signal_pos.values():
|
for v in self.signal_pos.values():
|
||||||
|
@ -12,7 +12,7 @@ from vnpy.app.cta_strategy import (
|
|||||||
|
|
||||||
class MultiTimeframeStrategy(CtaTemplate):
|
class MultiTimeframeStrategy(CtaTemplate):
|
||||||
""""""
|
""""""
|
||||||
author = '用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
rsi_signal = 20
|
rsi_signal = 20
|
||||||
rsi_window = 14
|
rsi_window = 14
|
||||||
@ -27,12 +27,12 @@ class MultiTimeframeStrategy(CtaTemplate):
|
|||||||
slow_ma = 0
|
slow_ma = 0
|
||||||
ma_trend = 0
|
ma_trend = 0
|
||||||
|
|
||||||
parameters = ['rsi_signal', 'rsi_window',
|
parameters = ["rsi_signal", "rsi_window",
|
||||||
'fast_window', 'slow_window',
|
"fast_window", "slow_window",
|
||||||
'fixed_size']
|
"fixed_size"]
|
||||||
|
|
||||||
variables = ['rsi_value', 'rsi_long', 'rsi_short',
|
variables = ["rsi_value", "rsi_long", "rsi_short",
|
||||||
'fast_ma', 'slow_ma', 'ma_trend']
|
"fast_ma", "slow_ma", "ma_trend"]
|
||||||
|
|
||||||
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
def __init__(self, cta_engine, strategy_name, vt_symbol, setting):
|
||||||
""""""
|
""""""
|
||||||
|
@ -12,7 +12,7 @@ from time import time
|
|||||||
|
|
||||||
class TestStrategy(CtaTemplate):
|
class TestStrategy(CtaTemplate):
|
||||||
""""""
|
""""""
|
||||||
author = '用Python的交易员'
|
author = "用Python的交易员"
|
||||||
|
|
||||||
test_trigger = 10
|
test_trigger = 10
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user