请问金字塔PY是不是这样写?函数写在‘python模块’里,直接引用
1,希望在开盘前运行一次策略,以知道目前的策略状态
2,希望这个策略不只可以使用在一个品种上,其它品种也可以使用
3,连续月份数据,应该怎么弄?能不能映射到主力月份下单
4,怎么样让 输出 显示在面板上
# 本Python代码主要用于策略交易
# 可以自己import我们平台支持的第三方python模块,比如pandas、numpy等。
from PythonApi import *
from jzt_wxyingyong import chanlun
# 参数定义区,这里定义的参数可以直接在context对象中获取。--(选择实现)
#def parameter():
# input_par("myvalues1",5,1,20,1)
# input_par("myvalues2",10,1,20,1)
# 在这个方法中编写任何的初始化逻辑。context对象将会在你的算法策略的任何方法之间做传递。--(必须实现)
def init(context):
# 在context中保存全局变量
context.s1 = "SQAG2012" #平安银行股票
#context.s1 = context.run_info.base_book_id
# print("策略启动") #调试打印输出
# before_trading此函数会在每天基准合约的策略交易开始前被调用,当天只会被调用一次。--(选择实现)
def before_trading(context):
close = history_bars(context.s1, 8000, 'self', 'close',True)
low = history_bars(context.s1, 8000, 'self', 'low',True)
high = history_bars(context.s1, 8000, 'self', 'high',True)
cangwei,money,cishu11,qian=chanlun(close=close,low=low,high=high,num1=2)
print(cangwei)
# 你选择的品种的数据更新将会触发此段逻辑,例如日或分钟历史数据切片或者是实时数据切片更新。--(必须实现)
def handle_bar(context):
# 开始编写你的主要的算法逻辑。
close = history_bars(context.s1, 8000, 'self', 'close',True)
low = history_bars(context.s1, 8000, 'self', 'low',True)
high = history_bars(context.s1, 8000, 'self', 'high',True)
cangwei,money,cishu11,qian=chanlun(close=close,low=low,high=high,num1=2)
#使用buy_open、sell_close等方法下单
#下单示例:
#buy_open(context.s1, "Market", volume = 100) # 市价开多
#buy_open(context.s1, "Limit", 25.45, 100) # 限价开多
# after_trading函数会在每天交易结束后被调用,当天只会被调用一次。 --(选择实现)
def after_trading(context):
pass
# order_status当委托下单,成交,撤单等与下单有关的动作时,该方法就会被调用。---(选择实现)
#def order_status(context,order):
# pass
# order_action当查询交易接口信息时返回的通知---(选择实现)
#def order_action(context,type, account, datas)
# pass
# exit函数会在测评结束或者停止策略运行时会被调用。---(选择实现)
#def exit(context):
# pass
另外,为什么360浏览器不能上传图片?
策略不是写在python模块里的,是写在python策略下
数据用什么,和下单时候下什么品种
这些全都是代码里你自己指定的,是否能用在其他品种也是你代码里自己选择品种的
也就是说你代码里完全是自主选择,不存在可以不可以一说