通知设置 新通知
开通Ptrade Python量化接口 国金证券/国盛证券
股票 • 绫波丽 发表了文章 • 0 个评论 • 19759 次浏览 • 2021-07-06 08:40
而退而求其次使用按键精灵,模拟点击交易软件进行点击下单,非常不稳定,无法判断下单后是否成交,也无法实时获取行情数据。如果使用tushare或者新浪接口数据,扫描一次全市场的行情用时很久且不稳定,等扫描结束,再下单,此时价格可能已经是几分钟前的了,且此类接口调用次数多是会被封IP的。
笔者使用的是券商提供的量化软件:Ptrade。是恒生电子研发的提供给机构使用的程序化交易软件。提供策略回测,下单API接口,实时行情获取,并且使用的开发语言python,易于上手。
策略回测与实盘交易
研究页面
研究页面,熟悉python jupyter notebook的朋友对这个界面肯定很熟悉。
研究的页面实际就运行你逐行输出调试程序,了解每个函数的具体使用,或者你策略的中途结果调试。
回测策略
实际代码需要在回测策略里面写,写完后确定无误,就可以放在仿真环境下真实运行。如果你运行得到的结果很满意,那么就可以直接部署到实盘服务器上。实盘服务器是在券商那边,不需要个人购买服务器,也不需要本地开着这个Ptrade,就是说不需要在个人电脑上一直开着跑,你的最终代码和程序是在券商服务器上部署与运行,除非有报错异常停止,不然在你不暂停或者停止的前提下,可以一直运行下去。
条件满足后下单
可视化量化
同时也提供一些常见的现成的量化策略,选中后只要鼠标点点点也能够自动化跑这些策略了,当然里面很多参数都可以用鼠标点点点修改。
接口文档也非常详细:
一些常见策略代码:
集合竞价追涨停策略def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
#每天9:23分运行集合竞价处理函数
run_daily(context, aggregate_auction_func, time='9:23')
def aggregate_auction_func(context):
stock = g.security
#最新价
snapshot = get_snapshot(stock)
price = snapshot[stock]['last_px']
#涨停价
up_limit = snapshot[stock]['up_px']
#如果最新价不小于涨停价,买入
if float(price) >= float(up_limit):
order(g.security, 100, limit_price=up_limit)
def handle_data(context, data):
pass
双均线策略def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
pass
#当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
def handle_data(context, data):
security = g.security
#得到十日历史价格
df = get_history(10, '1d', 'close', security, fq=None, include=False)
# 得到五日均线价格
ma5 = round(df['close'][-5:].mean(), 3)
# 得到十日均线价格
ma10 = round(df['close'][-10:].mean(), 3)
# 取得昨天收盘价
price = data[security]['close']
# 得到当前资金余额
cash = context.portfolio.cash
# 如果当前有余额,并且五日均线大于十日均线
if ma5 > ma10:
# 用所有 cash 买入股票
order_value(security, cash)
# 记录这次买入
log.info("Buying %s" % (security))
# 如果五日均线小于十日均线,并且目前有头寸
elif ma5 < ma10 and get_position(security).amount > 0:
# 全部卖出
order_target(security, 0)
# 记录这次卖出
log.info("Selling %s" % (security))
tick级别均线策略
通俗点就是按照秒级别进行操作。def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
#每3秒运行一次主函数
run_interval(context, func, seconds=3)
#盘前准备历史数据
def before_trading_start(context, data):
history = get_history(10, '1d', 'close', g.security, fq='pre', include=False)
g.close_array = history['close'].values
#当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
def func(context):
stock = g.security
#获取最新价
snapshot = get_snapshot(stock)
price = snapshot[stock]['last_px']
# 得到五日均线价格
days = 5
ma5 = get_MA_day(stock, days, g.close_array[-4:], price)
# 得到十日均线价格
days = 10
ma10 = get_MA_day(stock, days, g.close_array[-9:], price)
# 得到当前资金余额
cash = context.portfolio.cash
# 如果当前有余额,并且五日均线大于十日均线
if ma5 > ma10:
# 用所有 cash 买入股票
order_value(stock, cash)
# 记录这次买入
log.info("Buying %s" % (stock))
# 如果五日均线小于十日均线,并且目前有头寸
elif ma5 < ma10 and get_position(stock).amount > 0:
# 全部卖出
order_target(stock, 0)
# 记录这次卖出
log.info("Selling %s" % (stock))
#计算实时均线函数
def get_MA_day(stock,days,close_array,current_price):
close_sum = close_array[-(days-1):].sum()
MA = (current_price + close_sum)/days
return MA
def handle_data(context, data):
pass
macd策略def f_expma(N,m,EXPMA1,price):
a = m/(N+1)
EXPMA2 = a * price + (1 - a)*EXPMA1
return EXPMA2 #2为后一天值
#定义macd函数,输入平滑系数参数、前一日值,输出当日值
def macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,price):
EXPMA12_2 = f_expma(N1,m,EXPMA12_1,price)
EXPMA26_2 = f_expma(N2,m,EXPMA26_1,price)
DIF2 = EXPMA12_2 - EXPMA26_2
a = m/(N3+1)
DEA2 = a * DIF2 + (1 - a)*DEA1
BAR2=2*(DIF2-DEA2)
return EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2
def initialize(context):
global init_price
init_price = None
# 获取沪深300股票
g.security = get_index_stocks('000300.SS')
#g.security = ['600570.SS']
# 设置我们要操作的股票池, 这里我们只操作一支股票
set_universe(g.security)
def handle_data(context, data):
# 获取历史数据,这里只获取了2天的数据,如果希望最终MACD指标结果更准确最好是获取
# 从股票上市至今的所有历史数据,即增加获取的天数
close_price = get_history(2, '1d', field='close', security_list=g.security)
#如果是停牌不进行计算
for security in g.security:
if data[security].is_open >0:
global init_price,EXPMA12_1,EXPMA26_1,EXPMA12_2,EXPMA26_2,DIF1,DIF2,DEA1,DEA2
if init_price is None:
init_price = close_price[security].mean()#nan和N-1个数,mean为N-1个数的均值
EXPMA12_1 = init_price
EXPMA26_1 = init_price
DIF1 = init_price
DEA1 = init_price
# m用于计算平滑系数a=m/(N+1)
m = 2.0
#设定指数平滑基期数
N1 = 12
N2 = 26
N3 = 9
EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2 = macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,close_price[security][-1])
# 取得当前价格
current_price = data[security].price
# 取得当前的现金
cash = context.portfolio.cash
# DIF、DEA均为正,DIF向上突破DEA,买入信号参考
if DIF2 > 0 and DEA2 > 0 and DIF1 < DEA1 and DIF2 > DEA2:
# 计算可以买多少只股票
number_of_shares = int(cash/current_price)
# 购买量大于0时,下单
if number_of_shares > 0:
# 以市单价买入股票,日回测时即是开盘价
order(security, +number_of_shares)
# 记录这次买入
log.info("Buying %s" % (security))
# DIF、DEA均为负,DIF向下突破DEA,卖出信号参考
elif DIF2 < 0 and DEA2 < 0 and DIF1 > DEA1 and DIF2 < DEA2 and get_position(security).amount > 0:
# 卖出所有股票,使这只股票的最终持有量为0
order_target(security, 0)
# 记录这次卖出
log.info("Selling %s" % (security))
# 将今日的值赋给全局变量作为下一次前一日的值
DEA1 = DEA2
DIF1 = DIF2
EXPMA12_1 = EXPMA12_2
EXPMA26_1 = EXPMA26_2
软件与交易接口开通条件:
开通该券商后,存入资金指定资金即可开通。开通后股票交易费率万一
本身券商的交易费率为股票万一,可转债沪百万分之五,深十万分之五,基金万0.5,非常厚道。
不太了解量化行业的可以了解下,不少面向机构的量化交易软件的佣金是万2.5的,且开户门槛高,基本是500W以上,比如华泰的matic量化的门槛是1千万元起步。
所以笔者还是很推荐目前该券商的量化交易接口。
需要开通咨询了解的朋友可以扫码联系:
开通券商账户后可以 可以先试用,再考虑是否开通量化接口权限 查看全部
而退而求其次使用按键精灵,模拟点击交易软件进行点击下单,非常不稳定,无法判断下单后是否成交,也无法实时获取行情数据。如果使用tushare或者新浪接口数据,扫描一次全市场的行情用时很久且不稳定,等扫描结束,再下单,此时价格可能已经是几分钟前的了,且此类接口调用次数多是会被封IP的。
笔者使用的是券商提供的量化软件:Ptrade。是恒生电子研发的提供给机构使用的程序化交易软件。提供策略回测,下单API接口,实时行情获取,并且使用的开发语言python,易于上手。
策略回测与实盘交易
研究页面
研究页面,熟悉python jupyter notebook的朋友对这个界面肯定很熟悉。
研究的页面实际就运行你逐行输出调试程序,了解每个函数的具体使用,或者你策略的中途结果调试。
回测策略
实际代码需要在回测策略里面写,写完后确定无误,就可以放在仿真环境下真实运行。如果你运行得到的结果很满意,那么就可以直接部署到实盘服务器上。实盘服务器是在券商那边,不需要个人购买服务器,也不需要本地开着这个Ptrade,就是说不需要在个人电脑上一直开着跑,你的最终代码和程序是在券商服务器上部署与运行,除非有报错异常停止,不然在你不暂停或者停止的前提下,可以一直运行下去。
条件满足后下单
可视化量化
同时也提供一些常见的现成的量化策略,选中后只要鼠标点点点也能够自动化跑这些策略了,当然里面很多参数都可以用鼠标点点点修改。
接口文档也非常详细:
一些常见策略代码:
集合竞价追涨停策略
def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
#每天9:23分运行集合竞价处理函数
run_daily(context, aggregate_auction_func, time='9:23')
def aggregate_auction_func(context):
stock = g.security
#最新价
snapshot = get_snapshot(stock)
price = snapshot[stock]['last_px']
#涨停价
up_limit = snapshot[stock]['up_px']
#如果最新价不小于涨停价,买入
if float(price) >= float(up_limit):
order(g.security, 100, limit_price=up_limit)
def handle_data(context, data):
pass
双均线策略
def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
pass
#当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
def handle_data(context, data):
security = g.security
#得到十日历史价格
df = get_history(10, '1d', 'close', security, fq=None, include=False)
# 得到五日均线价格
ma5 = round(df['close'][-5:].mean(), 3)
# 得到十日均线价格
ma10 = round(df['close'][-10:].mean(), 3)
# 取得昨天收盘价
price = data[security]['close']
# 得到当前资金余额
cash = context.portfolio.cash
# 如果当前有余额,并且五日均线大于十日均线
if ma5 > ma10:
# 用所有 cash 买入股票
order_value(security, cash)
# 记录这次买入
log.info("Buying %s" % (security))
# 如果五日均线小于十日均线,并且目前有头寸
elif ma5 < ma10 and get_position(security).amount > 0:
# 全部卖出
order_target(security, 0)
# 记录这次卖出
log.info("Selling %s" % (security))
tick级别均线策略
通俗点就是按照秒级别进行操作。
def initialize(context):
# 初始化此策略
# 设置我们要操作的股票池, 这里我们只操作一支股票
g.security = '600570.SS'
set_universe(g.security)
#每3秒运行一次主函数
run_interval(context, func, seconds=3)
#盘前准备历史数据
def before_trading_start(context, data):
history = get_history(10, '1d', 'close', g.security, fq='pre', include=False)
g.close_array = history['close'].values
#当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
def func(context):
stock = g.security
#获取最新价
snapshot = get_snapshot(stock)
price = snapshot[stock]['last_px']
# 得到五日均线价格
days = 5
ma5 = get_MA_day(stock, days, g.close_array[-4:], price)
# 得到十日均线价格
days = 10
ma10 = get_MA_day(stock, days, g.close_array[-9:], price)
# 得到当前资金余额
cash = context.portfolio.cash
# 如果当前有余额,并且五日均线大于十日均线
if ma5 > ma10:
# 用所有 cash 买入股票
order_value(stock, cash)
# 记录这次买入
log.info("Buying %s" % (stock))
# 如果五日均线小于十日均线,并且目前有头寸
elif ma5 < ma10 and get_position(stock).amount > 0:
# 全部卖出
order_target(stock, 0)
# 记录这次卖出
log.info("Selling %s" % (stock))
#计算实时均线函数
def get_MA_day(stock,days,close_array,current_price):
close_sum = close_array[-(days-1):].sum()
MA = (current_price + close_sum)/days
return MA
def handle_data(context, data):
pass
macd策略
def f_expma(N,m,EXPMA1,price):
a = m/(N+1)
EXPMA2 = a * price + (1 - a)*EXPMA1
return EXPMA2 #2为后一天值
#定义macd函数,输入平滑系数参数、前一日值,输出当日值
def macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,price):
EXPMA12_2 = f_expma(N1,m,EXPMA12_1,price)
EXPMA26_2 = f_expma(N2,m,EXPMA26_1,price)
DIF2 = EXPMA12_2 - EXPMA26_2
a = m/(N3+1)
DEA2 = a * DIF2 + (1 - a)*DEA1
BAR2=2*(DIF2-DEA2)
return EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2
def initialize(context):
global init_price
init_price = None
# 获取沪深300股票
g.security = get_index_stocks('000300.SS')
#g.security = ['600570.SS']
# 设置我们要操作的股票池, 这里我们只操作一支股票
set_universe(g.security)
def handle_data(context, data):
# 获取历史数据,这里只获取了2天的数据,如果希望最终MACD指标结果更准确最好是获取
# 从股票上市至今的所有历史数据,即增加获取的天数
close_price = get_history(2, '1d', field='close', security_list=g.security)
#如果是停牌不进行计算
for security in g.security:
if data[security].is_open >0:
global init_price,EXPMA12_1,EXPMA26_1,EXPMA12_2,EXPMA26_2,DIF1,DIF2,DEA1,DEA2
if init_price is None:
init_price = close_price[security].mean()#nan和N-1个数,mean为N-1个数的均值
EXPMA12_1 = init_price
EXPMA26_1 = init_price
DIF1 = init_price
DEA1 = init_price
# m用于计算平滑系数a=m/(N+1)
m = 2.0
#设定指数平滑基期数
N1 = 12
N2 = 26
N3 = 9
EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2 = macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,close_price[security][-1])
# 取得当前价格
current_price = data[security].price
# 取得当前的现金
cash = context.portfolio.cash
# DIF、DEA均为正,DIF向上突破DEA,买入信号参考
if DIF2 > 0 and DEA2 > 0 and DIF1 < DEA1 and DIF2 > DEA2:
# 计算可以买多少只股票
number_of_shares = int(cash/current_price)
# 购买量大于0时,下单
if number_of_shares > 0:
# 以市单价买入股票,日回测时即是开盘价
order(security, +number_of_shares)
# 记录这次买入
log.info("Buying %s" % (security))
# DIF、DEA均为负,DIF向下突破DEA,卖出信号参考
elif DIF2 < 0 and DEA2 < 0 and DIF1 > DEA1 and DIF2 < DEA2 and get_position(security).amount > 0:
# 卖出所有股票,使这只股票的最终持有量为0
order_target(security, 0)
# 记录这次卖出
log.info("Selling %s" % (security))
# 将今日的值赋给全局变量作为下一次前一日的值
DEA1 = DEA2
DIF1 = DIF2
EXPMA12_1 = EXPMA12_2
EXPMA26_1 = EXPMA26_2
软件与交易接口开通条件:
开通该券商后,存入资金指定资金即可开通。开通后股票交易费率万一
本身券商的交易费率为股票万一,可转债沪百万分之五,深十万分之五,基金万0.5,非常厚道。
不太了解量化行业的可以了解下,不少面向机构的量化交易软件的佣金是万2.5的,且开户门槛高,基本是500W以上,比如华泰的matic量化的门槛是1千万元起步。
所以笔者还是很推荐目前该券商的量化交易接口。
需要开通咨询了解的朋友可以扫码联系:
开通券商账户后可以 可以先试用,再考虑是否开通量化接口权限
雪球大v 港股打新王开 据说是骗子,入群收益千万,睡粉丝,睡券商经理
股票 • 绫波丽 发表了文章 • 0 个评论 • 3879 次浏览 • 2021-07-05 23:42
现在这个王开貌似也是荐股收费,还睡人了。
网络转载文字,网友意见。如有侵权,请联系删除。
量化交易接口python A股
股票 • 绫波丽 发表了文章 • 0 个评论 • 7490 次浏览 • 2021-07-01 11:22
实际操作也好,几乎没见几个人教你怎么用程序下单,实盘交易。
稍微好点的easytrader使用的是模拟点击交易软件进行点击下单,基本无法判断下单后是否成交,也无法实时获取行情数据。别跟我说用tushare或者新浪这些接口数据,除非你做的是低频交易。
试试扫描一次全市场的行情看看用时多少?等得到满足条件了,再下单,此时价格可能已经在涨停板上封住了。
笔者使用的是券商提供的量化软件:Ptrade。
是恒生电子研发的提供给券商机构使用的程序化交易软件。提供策略回测,自动下单功能,使用的开发语言python。
策略回测与实盘交易
研究页面
研究页面,熟悉python jupyter notebook的朋友对这个界面肯定很熟悉。
研究的页面实际就运行你逐行输出调试程序,了解每个函数的具体使用,或者你策略的中途结果调试。
回测策略
实际代码需要在回测策略里面写,写完后确定无误,就可以放在仿真环境下真实运行。
如果你运行得到的结果很满意,那么就可以直接部署到实盘服务器上。
实盘服务器是在券商那边,不需要个人购买服务器,也不需要本地开着这个Ptrade,就是说不需要在个人电脑上一直开着跑,你的最终代码和程序是在券商服务器上部署与运行,除非有报错异常停止,不然在你不暂停或者停止的前提下,可以一直运行下去。
条件满足后下单
可视化量化
同时也提供一些常见的现成的量化策略,选中后只要鼠标点点点也能够自动化跑这些策略了,当然里面很多参数都可以用鼠标点点点修改。
接口文档也非常详细:
一些常见策略代码:
双均线策略 def initialize(context):
2 # 初始化此策略
3 # 设置我们要操作的股票池, 这里我们只操作一支股票
4 g.security = '600570.SS'
5 set_universe(g.security)
6 pass
7
8 #当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
9 def handle_data(context, data):
10 security = g.security
11
12 #得到十日历史价格
13 df = get_history(10, '1d', 'close', security, fq=None, include=False)
14
15 # 得到五日均线价格
16 ma5 = round(df['close'][-5:].mean(), 3)
17
18 # 得到十日均线价格
19 ma10 = round(df['close'][-10:].mean(), 3)
20
21 # 取得昨天收盘价
22 price = data[security]['close']
23
24 # 得到当前资金余额
25 cash = context.portfolio.cash
26
27 # 如果当前有余额,并且五日均线大于十日均线
28 if ma5 > ma10:
29 # 用所有 cash 买入股票
30 order_value(security, cash)
31 # 记录这次买入
32 log.info("Buying %s" % (security))
33
34 # 如果五日均线小于十日均线,并且目前有头寸
35 elif ma5 < ma10 and get_position(security).amount > 0:
36 # 全部卖出
37 order_target(security, 0)
38 # 记录这次卖出
39 log.info("Selling %s" % (security))
macd策略
指数平滑均线函数,以price计算,可以选择收盘、开盘价等价格,N为时间周期,m用于计算平滑系数a=m/(N+1),EXPMA1为前一日值 def f_expma(N,m,EXPMA1,price):
2 a = m/(N+1)
3 EXPMA2 = a * price + (1 - a)*EXPMA1
4 return EXPMA2 #2为后一天值
5
6 #定义macd函数,输入平滑系数参数、前一日值,输出当日值
7 def macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,price):
8 EXPMA12_2 = f_expma(N1,m,EXPMA12_1,price)
9 EXPMA26_2 = f_expma(N2,m,EXPMA26_1,price)
10 DIF2 = EXPMA12_2 - EXPMA26_2
11 a = m/(N3+1)
12 DEA2 = a * DIF2 + (1 - a)*DEA1
13 BAR2=2*(DIF2-DEA2)
14 return EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2
15
16 def initialize(context):
17 global init_price
18 init_price = None
19 # 获取沪深300股票
20 g.security = get_index_stocks('000300.SS')
21 #g.security = ['600570.SS']
22 # 设置我们要操作的股票池, 这里我们只操作一支股票
23 set_universe(g.security)
24
25 def handle_data(context, data):
26 # 获取历史数据,这里只获取了2天的数据,如果希望最终MACD指标结果更准确最好是获取
27 # 从股票上市至今的所有历史数据,即增加获取的天数
28 close_price = get_history(2, '1d', field='close', security_list=g.security)
29 #如果是停牌不进行计算
30 for security in g.security:
31 if data[security].is_open >0:
32 global init_price,EXPMA12_1,EXPMA26_1,EXPMA12_2,EXPMA26_2,DIF1,DIF2,DEA1,DEA2
33 if init_price is None:
34 init_price = close_price[security].mean()#nan和N-1个数,mean为N-1个数的均值
35 EXPMA12_1 = init_price
36 EXPMA26_1 = init_price
37 DIF1 = init_price
38 DEA1 = init_price
39 # m用于计算平滑系数a=m/(N+1)
40 m = 2.0
41 #设定指数平滑基期数
42 N1 = 12
43 N2 = 26
44 N3 = 9
45 EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2 = macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,close_price[security][-1])
46 # 取得当前价格
47 current_price = data[security].price
48 # 取得当前的现金
49 cash = context.portfolio.cash
50 # DIF、DEA均为正,DIF向上突破DEA,买入信号参考
51 if DIF2 > 0 and DEA2 > 0 and DIF1 < DEA1 and DIF2 > DEA2:
52 # 计算可以买多少只股票
53 number_of_shares = int(cash/current_price)
54 # 购买量大于0时,下单
55 if number_of_shares > 0:
56 # 以市单价买入股票,日回测时即是开盘价
57 order(security, +number_of_shares)
58 # 记录这次买入
59 log.info("Buying %s" % (security))
60 # DIF、DEA均为负,DIF向下突破DEA,卖出信号参考
61 elif DIF2 < 0 and DEA2 < 0 and DIF1 > DEA1 and DIF2 < DEA2 and get_position(security).amount > 0:
62 # 卖出所有股票,使这只股票的最终持有量为0
63 order_target(security, 0)
64 # 记录这次卖出
65 log.info("Selling %s" % (security))
66 # 将今日的值赋给全局变量作为下一次前一日的值
67 DEA1 = DEA2
68 DIF1 = DIF2
69 EXPMA12_1 = EXPMA12_2
70 EXPMA26_1 = EXPMA26_2
同时也支持可转债T+0交易,笔者平时也主要是进行的可转债的交易。
软件与交易接口开通条件,
开通改券商后,存入资金50W放2周即可开通,开通后可取出。
本身券商的交易费率为股票万一免五,可转债百万分之二,非常厚道,因为不少面向机构的量化交易软件的佣金是万2.5的,笔者之前在国金渠道开的就是,坑的一比。所以笔者还是很推荐目前该券商的量化交易接口。
需要可以关注公众号获取开通链接: 查看全部
实际操作也好,几乎没见几个人教你怎么用程序下单,实盘交易。
稍微好点的easytrader使用的是模拟点击交易软件进行点击下单,基本无法判断下单后是否成交,也无法实时获取行情数据。别跟我说用tushare或者新浪这些接口数据,除非你做的是低频交易。
试试扫描一次全市场的行情看看用时多少?等得到满足条件了,再下单,此时价格可能已经在涨停板上封住了。
笔者使用的是券商提供的量化软件:Ptrade。
是恒生电子研发的提供给券商机构使用的程序化交易软件。提供策略回测,自动下单功能,使用的开发语言python。
策略回测与实盘交易
研究页面
研究页面,熟悉python jupyter notebook的朋友对这个界面肯定很熟悉。
研究的页面实际就运行你逐行输出调试程序,了解每个函数的具体使用,或者你策略的中途结果调试。
回测策略
实际代码需要在回测策略里面写,写完后确定无误,就可以放在仿真环境下真实运行。
如果你运行得到的结果很满意,那么就可以直接部署到实盘服务器上。
实盘服务器是在券商那边,不需要个人购买服务器,也不需要本地开着这个Ptrade,就是说不需要在个人电脑上一直开着跑,你的最终代码和程序是在券商服务器上部署与运行,除非有报错异常停止,不然在你不暂停或者停止的前提下,可以一直运行下去。
条件满足后下单
可视化量化
同时也提供一些常见的现成的量化策略,选中后只要鼠标点点点也能够自动化跑这些策略了,当然里面很多参数都可以用鼠标点点点修改。
接口文档也非常详细:
一些常见策略代码:
双均线策略
def initialize(context):
2 # 初始化此策略
3 # 设置我们要操作的股票池, 这里我们只操作一支股票
4 g.security = '600570.SS'
5 set_universe(g.security)
6 pass
7
8 #当五日均线高于十日均线时买入,当五日均线低于十日均线时卖出
9 def handle_data(context, data):
10 security = g.security
11
12 #得到十日历史价格
13 df = get_history(10, '1d', 'close', security, fq=None, include=False)
14
15 # 得到五日均线价格
16 ma5 = round(df['close'][-5:].mean(), 3)
17
18 # 得到十日均线价格
19 ma10 = round(df['close'][-10:].mean(), 3)
20
21 # 取得昨天收盘价
22 price = data[security]['close']
23
24 # 得到当前资金余额
25 cash = context.portfolio.cash
26
27 # 如果当前有余额,并且五日均线大于十日均线
28 if ma5 > ma10:
29 # 用所有 cash 买入股票
30 order_value(security, cash)
31 # 记录这次买入
32 log.info("Buying %s" % (security))
33
34 # 如果五日均线小于十日均线,并且目前有头寸
35 elif ma5 < ma10 and get_position(security).amount > 0:
36 # 全部卖出
37 order_target(security, 0)
38 # 记录这次卖出
39 log.info("Selling %s" % (security))
macd策略
指数平滑均线函数,以price计算,可以选择收盘、开盘价等价格,N为时间周期,m用于计算平滑系数a=m/(N+1),EXPMA1为前一日值
def f_expma(N,m,EXPMA1,price):
2 a = m/(N+1)
3 EXPMA2 = a * price + (1 - a)*EXPMA1
4 return EXPMA2 #2为后一天值
5
6 #定义macd函数,输入平滑系数参数、前一日值,输出当日值
7 def macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,price):
8 EXPMA12_2 = f_expma(N1,m,EXPMA12_1,price)
9 EXPMA26_2 = f_expma(N2,m,EXPMA26_1,price)
10 DIF2 = EXPMA12_2 - EXPMA26_2
11 a = m/(N3+1)
12 DEA2 = a * DIF2 + (1 - a)*DEA1
13 BAR2=2*(DIF2-DEA2)
14 return EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2
15
16 def initialize(context):
17 global init_price
18 init_price = None
19 # 获取沪深300股票
20 g.security = get_index_stocks('000300.SS')
21 #g.security = ['600570.SS']
22 # 设置我们要操作的股票池, 这里我们只操作一支股票
23 set_universe(g.security)
24
25 def handle_data(context, data):
26 # 获取历史数据,这里只获取了2天的数据,如果希望最终MACD指标结果更准确最好是获取
27 # 从股票上市至今的所有历史数据,即增加获取的天数
28 close_price = get_history(2, '1d', field='close', security_list=g.security)
29 #如果是停牌不进行计算
30 for security in g.security:
31 if data[security].is_open >0:
32 global init_price,EXPMA12_1,EXPMA26_1,EXPMA12_2,EXPMA26_2,DIF1,DIF2,DEA1,DEA2
33 if init_price is None:
34 init_price = close_price[security].mean()#nan和N-1个数,mean为N-1个数的均值
35 EXPMA12_1 = init_price
36 EXPMA26_1 = init_price
37 DIF1 = init_price
38 DEA1 = init_price
39 # m用于计算平滑系数a=m/(N+1)
40 m = 2.0
41 #设定指数平滑基期数
42 N1 = 12
43 N2 = 26
44 N3 = 9
45 EXPMA12_2,EXPMA26_2,DIF2,DEA2,BAR2 = macd(N1,N2,N3,m,EXPMA12_1,EXPMA26_1,DEA1,close_price[security][-1])
46 # 取得当前价格
47 current_price = data[security].price
48 # 取得当前的现金
49 cash = context.portfolio.cash
50 # DIF、DEA均为正,DIF向上突破DEA,买入信号参考
51 if DIF2 > 0 and DEA2 > 0 and DIF1 < DEA1 and DIF2 > DEA2:
52 # 计算可以买多少只股票
53 number_of_shares = int(cash/current_price)
54 # 购买量大于0时,下单
55 if number_of_shares > 0:
56 # 以市单价买入股票,日回测时即是开盘价
57 order(security, +number_of_shares)
58 # 记录这次买入
59 log.info("Buying %s" % (security))
60 # DIF、DEA均为负,DIF向下突破DEA,卖出信号参考
61 elif DIF2 < 0 and DEA2 < 0 and DIF1 > DEA1 and DIF2 < DEA2 and get_position(security).amount > 0:
62 # 卖出所有股票,使这只股票的最终持有量为0
63 order_target(security, 0)
64 # 记录这次卖出
65 log.info("Selling %s" % (security))
66 # 将今日的值赋给全局变量作为下一次前一日的值
67 DEA1 = DEA2
68 DIF1 = DIF2
69 EXPMA12_1 = EXPMA12_2
70 EXPMA26_1 = EXPMA26_2
同时也支持可转债T+0交易,笔者平时也主要是进行的可转债的交易。
软件与交易接口开通条件,
开通改券商后,存入资金50W放2周即可开通,开通后可取出。
本身券商的交易费率为股票万一免五,可转债百万分之二,非常厚道,因为不少面向机构的量化交易软件的佣金是万2.5的,笔者之前在国金渠道开的就是,坑的一比。所以笔者还是很推荐目前该券商的量化交易接口。
需要可以关注公众号获取开通链接:
富途美股打新费用挺贵的啊
绫波丽 发表了文章 • 0 个评论 • 1774 次浏览 • 2021-06-23 12:57
看着好像不是很多。可是,我中的新股的中金额也就100刀,费率算下来就2个点,2%。贵呀贵呀
还是我大A股好呀。
有兴趣的可以加美股打新交流群,解答各种美股打新疑难杂症。
美股交流群 微信群 查看全部
看着好像不是很多。可是,我中的新股的中金额也就100刀,费率算下来就2个点,2%。贵呀贵呀
还是我大A股好呀。
有兴趣的可以加美股打新交流群,解答各种美股打新疑难杂症。
美股交流群 微信群
美股交流群 微信群 程序化交易
绫波丽 发表了文章 • 0 个评论 • 2776 次浏览 • 2021-06-23 10:44
因为会过期,所以需要的人可以在公众号后台回复:加美股群
就可以加入啦。
公众号:
中国互联套利教程 手摸手操作教程
绫波丽 发表了文章 • 0 个评论 • 2116 次浏览 • 2021-05-25 01:21
1. 首先发现溢价的基金
2. 查看公告
3. 准备一个基金申购费率低的券商账号
4. 申购
5. 等待到账,卖出
6. 结束
1. 首先发现溢价的基金
2. 查看公告
3. 准备一个基金申购费率低的券商账号
4. 申购
5. 等待到账,卖出
6. 结束
PI币邀请码:yagamizsu
绫波丽 发表了文章 • 0 个评论 • 1747 次浏览 • 2021-05-15 11:24
邀请码:yagamizsu
用邀请码注册后会获得几个PI币。
邀请码:yagamizsu
用邀请码注册后会获得几个PI币。
南方聚利160131 开放申购 2021年5月14日
股票 • 李魔佛 发表了文章 • 0 个评论 • 2365 次浏览 • 2021-04-21 00:27
大概率是基金公司在做局,让你们进去套利的啦。
不过目前该基金的规模在5千万,看起来规模不算特别大,并且是一只债基。
跟520弘盈差不多的套路。
大概率是基金公司在做局,让你们进去套利的啦。
不过目前该基金的规模在5千万,看起来规模不算特别大,并且是一只债基。
跟520弘盈差不多的套路。
可转债投资体系
股票 • 李魔佛 发表了文章 • 1 个评论 • 2248 次浏览 • 2021-03-23 16:23
今天总结以前这段时间的经验,形成自己的一套可转债投资体系。
1. 买入价位决定成败。
在买入的那一刻,就可以知道这边买卖的胜算。不能买价格超过110以上的转债,切记。不要看标的,再好的标的,价格不美丽,买入也让自己陷入被动。不要说好公司的转债可以放宽买贵的,如果觉得是好公司,直接买正股。
2. 如果没有可以买的标的,一定要有耐心。 时刻未到而已。
2020年10月到12月,妖债横行,是个转债都被随便拉,无视正股涨跌,有些转债还涨破天际,一天100%+的涨幅。 把整体水位拉伸到一个120+的水平。 但是,这又如何? 2021年1月底,新债上市一只,破发一只。 最终满地90多元的转债,而且不断有跌破面值,跌破80多的。
记得当时自己的心态是贪心! 因为瞄定了鸿达转债,广汇转债,亚药转债,搜特转债,以为80多的转债要往70多,60多下移,事后看,当时没有及时大力加仓,错过了一个好价位。
所以设定的规则:跌破5元加仓一格,波动可以在-1到+1之间,也就是94-96之间加仓,89-91之间加仓,如此类推。
3. 110元以下,不能频繁做卖出操作
这个位置110以下卖出,会失去心理优势位置。比如90买的,105卖出,然后涨到115,跌到109,这个时候会有一种冲动要买回来,因为心理上怕后续涨到115或更高后的卖飞心态。 110以下尽量忍住不动。 130以后可以分批卖。所以这里要保证,100面值以下要尽量多买,不能经常做T把筹码给出掉了,失去心理优势价位。 因为如果你90卖的,95卖出,然后涨到98,这个时候你反而不会买,心理是想着它跌回到95以下才买入。从而造成后续该转债一飞冲天而你已经失去仓位了。
上面规则适合上班族,无时间看盘者。
如果有时间看盘,那么可以使用部分仓位进行市场风格的参与博弈。当然这部分是高波动部分,一般人不建议操作。
查看全部
可转债投资体系
今天总结以前这段时间的经验,形成自己的一套可转债投资体系。
1. 买入价位决定成败。
在买入的那一刻,就可以知道这边买卖的胜算。不能买价格超过110以上的转债,切记。不要看标的,再好的标的,价格不美丽,买入也让自己陷入被动。不要说好公司的转债可以放宽买贵的,如果觉得是好公司,直接买正股。
2. 如果没有可以买的标的,一定要有耐心。 时刻未到而已。
2020年10月到12月,妖债横行,是个转债都被随便拉,无视正股涨跌,有些转债还涨破天际,一天100%+的涨幅。 把整体水位拉伸到一个120+的水平。 但是,这又如何? 2021年1月底,新债上市一只,破发一只。 最终满地90多元的转债,而且不断有跌破面值,跌破80多的。
记得当时自己的心态是贪心! 因为瞄定了鸿达转债,广汇转债,亚药转债,搜特转债,以为80多的转债要往70多,60多下移,事后看,当时没有及时大力加仓,错过了一个好价位。
所以设定的规则:跌破5元加仓一格,波动可以在-1到+1之间,也就是94-96之间加仓,89-91之间加仓,如此类推。
3. 110元以下,不能频繁做卖出操作
这个位置110以下卖出,会失去心理优势位置。比如90买的,105卖出,然后涨到115,跌到109,这个时候会有一种冲动要买回来,因为心理上怕后续涨到115或更高后的卖飞心态。 110以下尽量忍住不动。 130以后可以分批卖。所以这里要保证,100面值以下要尽量多买,不能经常做T把筹码给出掉了,失去心理优势价位。 因为如果你90卖的,95卖出,然后涨到98,这个时候你反而不会买,心理是想着它跌回到95以下才买入。从而造成后续该转债一飞冲天而你已经失去仓位了。
上面规则适合上班族,无时间看盘者。
如果有时间看盘,那么可以使用部分仓位进行市场风格的参与博弈。当然这部分是高波动部分,一般人不建议操作。
本站使用邀请制进站,注册后需要审核才可以发文字回复等操作
股票 • 李魔佛 发表了文章 • 0 个评论 • 1803 次浏览 • 2021-03-21 17:04
弘盈A套利总结的经验 --大幅度溢价的不能用拖拉机
股票 • 李魔佛 发表了文章 • 0 个评论 • 1994 次浏览 • 2021-03-19 11:31
华泰,招商
排队的:
华宝,银河
华泰,招商
排队的:
华宝,银河
PTrade使用教程 新手入门
股票 • 李魔佛 发表了文章 • 0 个评论 • 12098 次浏览 • 2021-03-18 08:55
记录一下曾经的入门经验与使用心得:
好像PTrade有几个版本,本人使用的界面如下,基于python写交易策略和回测:
1. 仿真系统的回测可以在交易时间运行,交易系统的回测无法在交易时间运行回测。
2. 在研究板块中,API函数带有研究字样的,可以直接使用,不需要import 导入任何库。比如:#获取当日的股票池
g.stock_list = get_Ashares(g.current_date)可以自己使用。
而get_history(70, '1d', ['close','volume'], g.stock_list, fq='dypre', include=False)
没有带研究字样的,是无法直接在研究板块使用,只能在回测或者实盘使用。
3. 内置的python版本是:
'3.5.1 (default, Nov 1 2016, 01:53:03) \n[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]'
也就是无法使用fstring的方式格式化字符串
name='jack'
a=f'{name}'
4. log.debug log.error 等调试标记符不会有任何输出,bug!
只能使用log.info 或者print输出,还害我调试了半天,以为程序哪里的问题,导致我的输出不显示。
PTrade新手入门教程 二
需要开通Ptrade的朋友,可以扫描二维码开户,并可开通PTrade交易功能。
股票费率万分之一,转债十万分之二。
非诚勿扰。
原创文章,转载请注明出处
http://30daydo.com/article/44151
查看全部
记录一下曾经的入门经验与使用心得:
好像PTrade有几个版本,本人使用的界面如下,基于python写交易策略和回测:
1. 仿真系统的回测可以在交易时间运行,交易系统的回测无法在交易时间运行回测。
2. 在研究板块中,API函数带有研究字样的,可以直接使用,不需要import 导入任何库。比如:
#获取当日的股票池可以自己使用。
g.stock_list = get_Ashares(g.current_date)
而
get_history(70, '1d', ['close','volume'], g.stock_list, fq='dypre', include=False)
没有带研究字样的,是无法直接在研究板块使用,只能在回测或者实盘使用。
3. 内置的python版本是:
'3.5.1 (default, Nov 1 2016, 01:53:03) \n[GCC 4.8.5 20150623 (Red Hat 4.8.5-4)]'
也就是无法使用fstring的方式格式化字符串
name='jack'
a=f'{name}'
4. log.debug log.error 等调试标记符不会有任何输出,bug!
只能使用log.info 或者print输出,还害我调试了半天,以为程序哪里的问题,导致我的输出不显示。
PTrade新手入门教程 二
需要开通Ptrade的朋友,可以扫描二维码开户,并可开通PTrade交易功能。
股票费率万分之一,转债十万分之二。
非诚勿扰。
原创文章,转载请注明出处
http://30daydo.com/article/44151
PTrade当前时间不允许创建回测
股票 • 李魔佛 发表了文章 • 0 个评论 • 3397 次浏览 • 2021-03-17 10:35
如果需要在盘中时间回测,可以使用模拟账户来回测,甚至跟踪实盘。
如果没有模拟账户,需要找对应的券商经理申请。
在这边开户,会一条龙提供服务。
开户福利:
Ptrade低门槛开通,入金1W即可开通,费率股票万一
Ptrade券商开户:门槛低 查看全部
弘盈A - 套套利者
股票 • 李魔佛 发表了文章 • 0 个评论 • 2173 次浏览 • 2021-03-12 19:38
而赎回后的手续费是算入基金的净值。
所以策略就很明显,点到即止。
### 2021-03-27 更新 ##########
判断错误,原来这个基金是打算清盘的了。
限制申购后第一天地天板。公司是早有预谋,关联方收集筹码,便于开基金持有人大会时投票通过。 查看全部
而赎回后的手续费是算入基金的净值。
所以策略就很明显,点到即止。
### 2021-03-27 更新 ##########
判断错误,原来这个基金是打算清盘的了。
限制申购后第一天地天板。公司是早有预谋,关联方收集筹码,便于开基金持有人大会时投票通过。
富途牛牛的模拟买入卖出无法生效
股票 • 李魔佛 发表了文章 • 0 个评论 • 6907 次浏览 • 2021-03-03 18:44
下图是富途美股的期权交易
后来咨询了客服,原来富途的模拟撮合系统需要真实有成交才能生效。
也就是你挂卖一价,比如10元,你挂一个买单10,是不会成交的,甚至挂一个12,13,也不会成交,需要在实盘交易中,其他人成交了一单,你的模拟才会真正成交。而且如果实盘别人成交的是100股,你模拟挂单的是200股,那么实际成交也只会是100股。
最近入手的期权模拟,先练练手。
港股,美股的账号默认就帮你开了期权和模拟账号,放心玩。不像股需要一定的资金体量还要考试等几天。
在上面拿来练手最好不过了,白天可以练港股,晚上可以练美股。
推荐开个富途玩玩,不需要入金也可以玩,注册账号分分钟的事情。
富途开户链接
一步一步注册即可。可以不入金就可以模拟。
查看全部
下图是富途美股的期权交易
后来咨询了客服,原来富途的模拟撮合系统需要真实有成交才能生效。
也就是你挂卖一价,比如10元,你挂一个买单10,是不会成交的,甚至挂一个12,13,也不会成交,需要在实盘交易中,其他人成交了一单,你的模拟才会真正成交。而且如果实盘别人成交的是100股,你模拟挂单的是200股,那么实际成交也只会是100股。
最近入手的期权模拟,先练练手。
港股,美股的账号默认就帮你开了期权和模拟账号,放心玩。不像股需要一定的资金体量还要考试等几天。
在上面拿来练手最好不过了,白天可以练港股,晚上可以练美股。
推荐开个富途玩玩,不需要入金也可以玩,注册账号分分钟的事情。
富途开户链接
一步一步注册即可。可以不入金就可以模拟。
交易所的基金份额更新时间
股票 • 李魔佛 发表了文章 • 0 个评论 • 2278 次浏览 • 2021-01-21 23:05
具体时间再T+1 收盘前,待会测试下给结果。 上午开盘前9点没见到数据更新,中午1点前已经更新了的。
最新的数据在11:30已经出来了
基金的份额是怎么算的
股票 • 李魔佛 发表了文章 • 0 个评论 • 2122 次浏览 • 2021-01-21 23:02
从狭义上来说,基金卖出份额并不是钱,卖出份额的数量与赎回到账资金数额往往也是不相同的。
基金赎回金额计算公式为:基金赎回金额=基金份额*基金单位净值-赎回手续费
。由此可见,赎回金额的多少与基金卖出份额、基金单位净值和赎回手续费都是相关的。
基金份额可以简单理解为投资者持有的基金数量,而基金单位净值就等同于单位数量份额的价格。
以房子为例,某投资者拥有一套100平方米的房子,每平方市场售价为1万元/平方,那么基金份额就类似于房屋面积,基金单位净值就类似于每平方价格。
大多数基金赎回时都要根据持有天数的不同,按赎回总额收取不同比例的手续费,赎回手续费=(基金份额*基金单位净值)*赎回费率。
举例说明:
某投资者在2月17日赎回100份某基金,该基金2月17日的单位净值为1.2500,赎回费率为0,那么赎回金额=100*1.2500-0=125元。
二、基金份额一份等于多少钱
基金份额一份的价格就是当日基金单位净值,不过开放式基金单位净值是每日更新的,又涨也有跌,所以基金份额一份的价格也是不断变化的。
以上关于卖出多少份额就是多少钱吗的内容,希望对大家有所帮助。温馨提示,理财有风险,投资需谨慎。
基金认购后,净值为1,然后申购了多少钱,就有多少份额了。 查看全部
一、卖出多少份额就是多少钱吗
从狭义上来说,基金卖出份额并不是钱,卖出份额的数量与赎回到账资金数额往往也是不相同的。
基金赎回金额计算公式为:基金赎回金额=基金份额*基金单位净值-赎回手续费
。由此可见,赎回金额的多少与基金卖出份额、基金单位净值和赎回手续费都是相关的。
基金份额可以简单理解为投资者持有的基金数量,而基金单位净值就等同于单位数量份额的价格。
以房子为例,某投资者拥有一套100平方米的房子,每平方市场售价为1万元/平方,那么基金份额就类似于房屋面积,基金单位净值就类似于每平方价格。
大多数基金赎回时都要根据持有天数的不同,按赎回总额收取不同比例的手续费,赎回手续费=(基金份额*基金单位净值)*赎回费率。
举例说明:
某投资者在2月17日赎回100份某基金,该基金2月17日的单位净值为1.2500,赎回费率为0,那么赎回金额=100*1.2500-0=125元。
二、基金份额一份等于多少钱
基金份额一份的价格就是当日基金单位净值,不过开放式基金单位净值是每日更新的,又涨也有跌,所以基金份额一份的价格也是不断变化的。
以上关于卖出多少份额就是多少钱吗的内容,希望对大家有所帮助。温馨提示,理财有风险,投资需谨慎。
基金认购后,净值为1,然后申购了多少钱,就有多少份额了。
华美velo银行因为超过30天余额为0被关闭,无法重开
股票 • 李魔佛 发表了文章 • 0 个评论 • 8156 次浏览 • 2021-01-21 11:24
只能重新注册一个新账号了。
如果有需要开港卡,可以联系,国内见面开户,一次性收中介费,以后无年费,管理费。
需要的联系
需要资料:
1.身份证复印件
2.护照复印件(如果实在没有护照的,通行证也可以)
3.开户申请表(现在一个表格就可以搞定,不用6个)
4.资产证明(余额还是要求50万以上)。
PS:资产证明:可以是银行打印的纸质流水,也可以是股票,基金,支付宝这种电子的账单也行。
如果达不到,可以代办,不影响。 查看全部
只能重新注册一个新账号了。
如果有需要开港卡,可以联系,国内见面开户,一次性收中介费,以后无年费,管理费。
需要的联系
需要资料:
1.身份证复印件
2.护照复印件(如果实在没有护照的,通行证也可以)
3.开户申请表(现在一个表格就可以搞定,不用6个)
4.资产证明(余额还是要求50万以上)。
PS:资产证明:可以是银行打印的纸质流水,也可以是股票,基金,支付宝这种电子的账单也行。
如果达不到,可以代办,不影响。
今晚看了一晚段永平老师的雪球上的问答,颇有感慨
股票 • 李魔佛 发表了文章 • 0 个评论 • 2360 次浏览 • 2020-12-10 00:43
行字之间,看到一位智者在将他的人生哲学侃侃而谈。 受益匪浅。
可惜的是段老师要关闭问答了,而且就是在上周末,来不及在问答里说一声问候,祝安康。
进度:第6页。
行字之间,看到一位智者在将他的人生哲学侃侃而谈。 受益匪浅。
可惜的是段老师要关闭问答了,而且就是在上周末,来不及在问答里说一声问候,祝安康。
进度:第6页。
优矿数据导出
股票 • 李魔佛 发表了文章 • 0 个评论 • 6380 次浏览 • 2020-12-04 09:11
比如有一个所有股票的dataframe ->df
df.to_csv('all_stock.csv')
然后到左边的数据栏里面,可以在里面看到自己刚刚导出的数据,然后可以选择你刚刚导出的文件,有个选项可以下载,一天可以下载100MB的文件。 查看全部
比如有一个所有股票的dataframe ->df
df.to_csv('all_stock.csv')
然后到左边的数据栏里面,可以在里面看到自己刚刚导出的数据,然后可以选择你刚刚导出的文件,有个选项可以下载,一天可以下载100MB的文件。
雪球上的手哥zangyn 是不是利用bug把收益率做的这么高?
股票 • 绫波丽 发表了文章 • 0 个评论 • 5798 次浏览 • 2020-12-02 12:20
每次看他都只是小赚小亏,最后居然还是这么牛叉的收益率。
有知道的朋友吗?
【python数据采集与分析】获取配售新股最多的基金 - 天天基金网 套利
股票 • 李魔佛 发表了文章 • 0 个评论 • 2472 次浏览 • 2020-10-28 23:37
根据天天基金网的获得新股的基金数据,采集下来。然后再去新股获配详情里面,点击某一只新股,然后里面有每一个基金的拟申购股数与金额,通过这个数据取更新某个基金的实际获配金额,更为精确的知道基金中新股的占比。
已完成。
部分数据如下图:
点击查看大图
程序编译为exe可执行程序,兼容各个平台。
对数据或者程序有意者可以私信。 查看全部
优矿 由于您的Notebook运行内容占用内存过大或其他逻辑错误,微核已自动重启。
股票 • 李魔佛 发表了文章 • 0 个评论 • 2286 次浏览 • 2020-10-28 01:12
2020-10-20 可转债市场成交量较昨天多一倍
股票 • 绫波丽 发表了文章 • 0 个评论 • 2430 次浏览 • 2020-10-20 17:51
最近的策略就是减仓。
最近的策略就是减仓。
为什么美股打新只能打部分公司,而且大部分都是中国境内运营的公司?
李魔佛 发表了文章 • 0 个评论 • 4271 次浏览 • 2020-10-17 00:46
之前一个比较疑惑的问题,在一些可以打美股新股的券商软件上,明明看到不少美股新股上市,排队也爬的慢慢的,为什么我们只能打一些中国境内运营的公司?
原因是:
作为全球第一大市场,美股每年IPO融资规模和上市宗数基本稳定在全球前3。
从之前笔者汇总的数据来看:美股IPO首日破发率比港股还要低一点,打新确实有利可图。可为什么一直火不起来呢?
应粉丝要求,今天简单讲一讲。可能有的地方会说错,欢迎指正。美股打新只有美国人可以参与,其他人只能参与国际配售。其实港股也是这样的,不允许非香港居民参与公开申购,很多银行都严格执行这个规定,但是对参与国际配售就没有限制。
然而港交所并不认真查这个,原因有2点:香港本地居民很少参与IPO认购,2018年之前新股平均认购人数不足3000。大概是因为本地券商手续费太高,申购新股根本赚不到钱。如果再不让大陆人来参与的话,很多公司都发不出去。
同时,投资者通过券商认购新股,港交所会收取5元/笔的EIPO费用。如果单个新股有20万人申购,就可以一次收100万元,谁会跟钱过不去?
港股很多规则是跟美股学的,还是说回美股。
具体申购美股要不要钱(指费用)我不知道,反正国际配售不要钱。连1.0077%中签费好像都没有,参与成本低于港股IPO。
美国居民人数是香港的几十倍,不用担心人数不足;
美国法律那是杠杠的,应该没有券商敢去以身试法。
所以大陆人只能参与国际配售,就会面临一个很麻烦的问题:我们能接触到的开户券商根本就拿不到货,除了少数几个中概股之外。
那么,我们能参与的标的就非常少,通常一年也就那么几次。然而问题并不是到此为止。
还有几个很现实的问题:
首先是新股上市首日,时间很不确定。据说在美股开盘后,新股有很长一段时间是集合竞价时间,将会在这半小时至2小时内随机开盘。你以为可以提前挂个竞价单去睡觉?很不幸,这是不可能的,因为你股票大概率还没到账!
券商拿到股票之后,在通过各种后台分发到投资者账户,根据上手(可以认为是保荐人或者承销商)的不同,时长也不同。反正基本不要指望开盘前能到。
亏钱就算了,还TM不知道要熬夜到几点!
还有一点,同样让人很纠结:券商在派货上有相当大的自主权。
如果股票热门,不分给你,你又能怎么样?跟你很熟吗?
有券商经常这样玩:
认购100股,分50股;
认购300股,还是分50股!
认购1000股,也只分了50股...
为了做到人人有份,简直是侮辱智商!那以后SB才去认购那么多!
烂票都是你的,这个你肯定也不介意吧
申购100股,能分你130股,因为你交的1000美元,下限定价后可以买130股啦!加量不加价哟...
基本就讲完了吧,我只玩过一次就果断拉黑了。集团上市不让我们参与,也没搞成。如果后面有非常好的标的去美国上市,我可能会再参与下。
出了瑞幸这档子事之后,中概股去美国上市,估计要被砍估值。
如果读者有需要开港美股,可以关注公众号:
后台留言: 港美股开户
优惠多多哦。 查看全部
之前一个比较疑惑的问题,在一些可以打美股新股的券商软件上,明明看到不少美股新股上市,排队也爬的慢慢的,为什么我们只能打一些中国境内运营的公司?
原因是:
作为全球第一大市场,美股每年IPO融资规模和上市宗数基本稳定在全球前3。
从之前笔者汇总的数据来看:美股IPO首日破发率比港股还要低一点,打新确实有利可图。可为什么一直火不起来呢?
应粉丝要求,今天简单讲一讲。可能有的地方会说错,欢迎指正。美股打新只有美国人可以参与,其他人只能参与国际配售。其实港股也是这样的,不允许非香港居民参与公开申购,很多银行都严格执行这个规定,但是对参与国际配售就没有限制。
然而港交所并不认真查这个,原因有2点:香港本地居民很少参与IPO认购,2018年之前新股平均认购人数不足3000。大概是因为本地券商手续费太高,申购新股根本赚不到钱。如果再不让大陆人来参与的话,很多公司都发不出去。
同时,投资者通过券商认购新股,港交所会收取5元/笔的EIPO费用。如果单个新股有20万人申购,就可以一次收100万元,谁会跟钱过不去?
港股很多规则是跟美股学的,还是说回美股。
具体申购美股要不要钱(指费用)我不知道,反正国际配售不要钱。连1.0077%中签费好像都没有,参与成本低于港股IPO。
美国居民人数是香港的几十倍,不用担心人数不足;
美国法律那是杠杠的,应该没有券商敢去以身试法。
所以大陆人只能参与国际配售,就会面临一个很麻烦的问题:我们能接触到的开户券商根本就拿不到货,除了少数几个中概股之外。
那么,我们能参与的标的就非常少,通常一年也就那么几次。然而问题并不是到此为止。
还有几个很现实的问题:
首先是新股上市首日,时间很不确定。据说在美股开盘后,新股有很长一段时间是集合竞价时间,将会在这半小时至2小时内随机开盘。你以为可以提前挂个竞价单去睡觉?很不幸,这是不可能的,因为你股票大概率还没到账!
券商拿到股票之后,在通过各种后台分发到投资者账户,根据上手(可以认为是保荐人或者承销商)的不同,时长也不同。反正基本不要指望开盘前能到。
亏钱就算了,还TM不知道要熬夜到几点!
还有一点,同样让人很纠结:券商在派货上有相当大的自主权。
如果股票热门,不分给你,你又能怎么样?跟你很熟吗?
有券商经常这样玩:
认购100股,分50股;
认购300股,还是分50股!
认购1000股,也只分了50股...
为了做到人人有份,简直是侮辱智商!那以后SB才去认购那么多!
烂票都是你的,这个你肯定也不介意吧
申购100股,能分你130股,因为你交的1000美元,下限定价后可以买130股啦!加量不加价哟...
基本就讲完了吧,我只玩过一次就果断拉黑了。集团上市不让我们参与,也没搞成。如果后面有非常好的标的去美国上市,我可能会再参与下。
出了瑞幸这档子事之后,中概股去美国上市,估计要被砍估值。
如果读者有需要开港美股,可以关注公众号:
后台留言: 港美股开户
优惠多多哦。
港股打新的基础知识
股票 • 量化大师 发表了文章 • 0 个评论 • 2605 次浏览 • 2020-09-03 23:15
其实我们不提倡长期炒港股,我们打新即可。今天就介绍些港股打新的基础知识给大家参考。
1、招股书:这个和我们大A是一样的,上市公司发行股票前要发布招股说明书,把公司的基本情况、近三年业绩情况、财务指标数据、行业前景等等都写在这里,基本上得有三四百页。
2、招股价:通常港股上市前会让公众认购的股价,会给一个范围,比如招股价1-3港元,那么地区定价就在1港元,中位数2港元,高区定价就是3港元,公司会结合公众认购的情况定价。
3、超额认购倍数:认购金额/募资额的倍数。通常公开发售超够倍数动态监测才有,具体数据只能在中签公开日才能知道。倍数越高,说明这个股票受到市场追捧,大家都希望认购,后期股票上市时上涨、大涨的概率就越高。
4、回拨机制:港股发行股票是有回拨机制的,比如公开发售占总募资股份的10%,国际配售占90%,如果认购太火爆,上市公司和承销商就可以根据认购倍数来进行调整,这个调整就叫回拨机制。超额认购倍数如果在15>50>100倍,则对应回拨比例30%、40%、50%最常见。回拨越多,说明市场需求越强,上涨概率越大。
5、绿鞋机制:港股中比较常见,因为港股打新并非必赚钱,新港股有一半上市就破发。绿鞋机制其实就是护盘机制,承销商就有维护上市股价稳定的责任,防止大起大落。
6、保荐人:保荐人一般是证券公司,就是辅导上市公司上市和信息披露的券商,并且承担担保责任。如果保荐人是国际知名企业,并且有很多辅导上市公司的案例,形成了自身的品牌,那么新股上市上涨的概率较大。
7、基石投资者:港股是有基石投资者的,主要是看好上市公司的机构、企业集团或上市公司的亲朋好友提前持有一些原始股,表示对上市公司未来前景的肯定,能给市场增强信心,因为基石投资者持有的股票需要锁定半年才能抛售。
8、新股认购:港股认购新股不需要市值,可用现金认购,也可融资认购。现金认购就是你账户有多少钱就认购多少,大部分券商现金认购免费。融资认购就是上杠杆,大部分券商支持10-20倍融资认购,少部分支持50倍认购,大部分券商融资认购既收手续费,又收融资利息。
9、甲组和乙组:港股打新根据申购金额不同分组,500万以下为甲组(小散户),500万以上为乙组(大户),公开发售甲乙组各50%,通常乙组人少,所以中签数量会多,收益与亏损都将同步放大。有时候融资多了就会冲到乙组。
10、孖展:其实是英文Margin,即保证金,可以认为是融资认购打新加杠杆。孖展越多超够倍数就越多,孖展倍数越高说明大家愿意上杠杆参与,新股上涨的概率就越大。
11、入门资金:港股的1手每个股票都不同,有些1手是100股,有些是1000股,甚至有些是2000股,每个股票都不一样,在招股说明书中一定要看好。同时这也决定了打1手需要的最低金额,即入门资金。比如招股价范围是1-3港元,1手是2000股,那么最低申购1手冻结的资金范围就是2000港元-6000港元之间。
12、一手中签率:港股打新就这点好,为了保证大家参与都有钱挣,港交所规定每个账户认购1手新股的中签率必须是最高的。比如你1个账户认购了1手新股,中1签的概率可能为80%;但如果你1个账户认购10手新股,你中1签的概率可能是10%。具体怎么操作的我也还不清楚,只知道这就是港股的规则。
正是一手中签率最高的原则,决定了港股打新的玩法:同一身份证开多账户,每账户配置1-2万港元,一手申购,提高中签率!
查看全部
其实我们不提倡长期炒港股,我们打新即可。今天就介绍些港股打新的基础知识给大家参考。
1、招股书:这个和我们大A是一样的,上市公司发行股票前要发布招股说明书,把公司的基本情况、近三年业绩情况、财务指标数据、行业前景等等都写在这里,基本上得有三四百页。
2、招股价:通常港股上市前会让公众认购的股价,会给一个范围,比如招股价1-3港元,那么地区定价就在1港元,中位数2港元,高区定价就是3港元,公司会结合公众认购的情况定价。
3、超额认购倍数:认购金额/募资额的倍数。通常公开发售超够倍数动态监测才有,具体数据只能在中签公开日才能知道。倍数越高,说明这个股票受到市场追捧,大家都希望认购,后期股票上市时上涨、大涨的概率就越高。
4、回拨机制:港股发行股票是有回拨机制的,比如公开发售占总募资股份的10%,国际配售占90%,如果认购太火爆,上市公司和承销商就可以根据认购倍数来进行调整,这个调整就叫回拨机制。超额认购倍数如果在15>50>100倍,则对应回拨比例30%、40%、50%最常见。回拨越多,说明市场需求越强,上涨概率越大。
5、绿鞋机制:港股中比较常见,因为港股打新并非必赚钱,新港股有一半上市就破发。绿鞋机制其实就是护盘机制,承销商就有维护上市股价稳定的责任,防止大起大落。
6、保荐人:保荐人一般是证券公司,就是辅导上市公司上市和信息披露的券商,并且承担担保责任。如果保荐人是国际知名企业,并且有很多辅导上市公司的案例,形成了自身的品牌,那么新股上市上涨的概率较大。
7、基石投资者:港股是有基石投资者的,主要是看好上市公司的机构、企业集团或上市公司的亲朋好友提前持有一些原始股,表示对上市公司未来前景的肯定,能给市场增强信心,因为基石投资者持有的股票需要锁定半年才能抛售。
8、新股认购:港股认购新股不需要市值,可用现金认购,也可融资认购。现金认购就是你账户有多少钱就认购多少,大部分券商现金认购免费。融资认购就是上杠杆,大部分券商支持10-20倍融资认购,少部分支持50倍认购,大部分券商融资认购既收手续费,又收融资利息。
9、甲组和乙组:港股打新根据申购金额不同分组,500万以下为甲组(小散户),500万以上为乙组(大户),公开发售甲乙组各50%,通常乙组人少,所以中签数量会多,收益与亏损都将同步放大。有时候融资多了就会冲到乙组。
10、孖展:其实是英文Margin,即保证金,可以认为是融资认购打新加杠杆。孖展越多超够倍数就越多,孖展倍数越高说明大家愿意上杠杆参与,新股上涨的概率就越大。
11、入门资金:港股的1手每个股票都不同,有些1手是100股,有些是1000股,甚至有些是2000股,每个股票都不一样,在招股说明书中一定要看好。同时这也决定了打1手需要的最低金额,即入门资金。比如招股价范围是1-3港元,1手是2000股,那么最低申购1手冻结的资金范围就是2000港元-6000港元之间。
12、一手中签率:港股打新就这点好,为了保证大家参与都有钱挣,港交所规定每个账户认购1手新股的中签率必须是最高的。比如你1个账户认购了1手新股,中1签的概率可能为80%;但如果你1个账户认购10手新股,你中1签的概率可能是10%。具体怎么操作的我也还不清楚,只知道这就是港股的规则。
正是一手中签率最高的原则,决定了港股打新的玩法:同一身份证开多账户,每账户配置1-2万港元,一手申购,提高中签率!