大到量化、程序化、高频交易、套利交易、主观投资这些基本的概念,小到网格交易、条件单、T+0、ETF套利、期现套利、算法拆单交易、打板策略等具体的投资方式。如果没有接触过这些,很容易混淆。
程序化交易:
在这次监管及沪深交易所给出的程序化相关业务通知中对程序化交易的定义为:
沪深交易所认为交易符合以下条件之一的,应当履行报告义务:
不管我们使用那种投资交易方式,我们始终在解决两个核心问题:选股、择时(什么时候如何交易)。
通过上面的基本概念可以看出程序化交易是相对人工交易而言,最大的特点就是:由计算机来自动生成订单并完成交易。
其中上述沪深交易所表述的一条“使用会员为客户提供的带有一定自动化功能的客户端软件进行交易的,且不符合上述条件的投资者,无需进行报告。”。
同时,QMT和Ptrade等“专业投资工具”均提供了用户可以以python、Java,C++等代码方式来编写一段“代码”来完成自己的交易,这样的方式相比软件提供的“标准的人工操作界面”的功能,可以更加灵活的实现一些个人的交易思路,这里的代码我们常称为“策略”,比如要实现一个简单的策略:1)如果上一时间点价格高出五天平均价1%,则全仓买入;2)如果上一时间点价格低于五天平均价,则空仓卖出,则在Ptrade的代码示例如下:
def initialize(context):
g.security = '600570.SS'
set_universe(g.security)
def handle_data(context, data):
security = g.security
sid = g.security
# 取得过去五天的历史价格
df = get_history(5, '1d', 'close', security, fq=None, include=False)
# 取得过去五天的平均价格
average_price = round(df['close'][-5:].mean(), 3)
# 取得上一时间点价格
current_price = data[sid]['close']
# 取得当前的现金
cash = context.portfolio.cash
# 如果上一时间点价格高出五天平均价1%, 则全仓买入
if current_price > 1.01*average_price:
# 用所有 cash 买入股票
order_value(g.security, cash)
log.info('buy %s' % g.security)
# 如果上一时间点价格低于五天平均价, 则空仓卖出
elif current_price < average_price and get_position(security).amount > 0:
# 卖出所有股票,使这只股票的最终持有量为0
order_target(g.security, 0)
log.info('sell %s' % g.security)
<< · Back Index ·>>
下一篇
想當兵,卻因為下蹲不全過不瞭兵檢,明明身體很壯腳踝扭傷恢復得挺好,但就是蹲不下來深蹲推舉,腳後跟卻總是離地下蹲不全,...
具有濕組織粘附性的粘附性水凝膠已被廣泛用於傷口輔料、止血劑、可穿戴電子、藥物投遞系統和組織工程領域,由於其具有附著力...