python股票自动 选股 与 止损 止盈 脚本


论止损的重要性:

亏10%涨11%回本;

亏20%涨25%回本;

亏30%涨42.86%回本;

亏40%涨66.67%回本;

亏50%涨100%回本;

亏60%涨150%回本;

亏70%涨233.33%回本;

亏80%涨400%回本;

亏90%涨900%回本;

亏100%永别了。

波动性和不可预测性是市场最根本的特征,这是市场存在的基础,也是交易中风险产生的原因,这是一个不可改变的特征。交易中永远没有确定性,所有的分析预测仅仅是一种可能性,根据这种可能性而进行的交易自然是不确定的,不确定的行为必须得有措施来控制其风险的扩大,止损就这样产生了。

止损是人类在交易过程中自然产生的,并非刻意制作,是投资者保护自己的一种本能反应,市场的不确定性造就了止损存在的必要性和重要性。成功的投资者可能有各自不同的交易方式,但止损却是保障他们获取成功的共同特征。世界投资大师索罗斯说过,投资本身没有风险,失控的投资才有风险。学会止损,千万别和亏损谈恋爱。止损远比盈利重要,因为任何时候保本都是第一位的,盈利是第二位的,建立合理的止损原则相当有效,谨慎的止损原则的核心在于不让亏损持续扩大。

为什么止损如此之难

明白止损的意义固然重要,然而,这并非最终的结果。事实上,投资者设置了止损而没有执行的例子比比皆是,市场上,被扫地出门的悲剧几乎每天都在上演。止损为何如此艰难?

原因有三:其一,侥幸的心理作祟。某些投资者尽管也知道趋势上已经破位,但由于过于犹豫,总是想再看一看、等一等,导致自己错过止损的大好时机;

其二,价格频繁的波动会让投资者犹豫不决,经常性错误的止损会给投资者留下挥之不去的记忆,从而动摇投资者下次止损的决心;

其三,执行止损是一件痛苦的事情,是一个血淋淋的过程,是对人性弱点的挑战和考验。

事实上,每次交易我们都无法确定是正确状态还是错误状态,即便盈利了,我们也难以决定是立即出场还是持有观望,更何况是处于被套状态下。人性追求贪婪的本能会使每一位投资者不愿意少赢几个点,更不愿意多亏几个点。

什么是程序化止损

正是由于上述原因,当价格到达止损位时,有的投资者错失方寸,患得患失,止损位置一改再改;有的投资者临时变卦,逆势加仓,企图孤注一掷,以挽回损失;有的投资者在亏损扩大之后,干脆采取“鸵鸟”政策,听之任之。为了避免这些现象,笔者以为可以采取程序化的止损策略。

国际上的期货交易所通常都会提供止损指令。交易者可以预先设定一个价位,当市场价格达到这个价位时,止损指令立即自动生效。而国内期货交易所目前还没有止损指令,但可以借助先进的期货交易工具,这是目前帮助投资者严格执行止损的一种简单而有效的方法。

目前,国内有的外汇交易系统可以提供市价止损和限价止损两种止损指令。市价止损是指市场价格一触及到预设的止损价位,立刻以市价发送止损委托;限价止损则是在市场价格一触及到预设的止损价位时以限价发送委托。市价止损指令能确保止损成功,而限价止损指令则可以避免在价格不连续时出现不必要的损失,两者各有利弊。通常,在成交活跃的品种上使用市价止损指令,而在成交不活跃的品种上使用限价止损指令。

这种交易系统有助于投资者养成良好的止损习惯,从而规避市场中的风险,使之最大限度地减少损失,使之化被动为主动,在期货市场中立于不败之地。

如何正确理解止损

市场的不确定性和价格的波动性决定了止损常常会是错误的。事实上,在每次交易中,我们也搞不清该不该止损,如果止损对了也许会窃喜,止损错了,则不仅会有资金减少的痛苦,更会有一种被愚弄的痛苦,心灵上的打击才是投资者最难以承受的痛苦。

因此,理解止损本质上就是如何正确理解错误的止损。错误的止损我们也应坦然接受,举个简单的例子,如果在交易中你的止损都是正确的,那就意味着你的每次交易都是正确的,而你的交易如果都是正确的,那又为什么要止损呢?所以,止损是一种成本,是寻找获利机会的成本,是交易获利所必须付出的代价,这种代价只有大小之分,难有对错之分,你要获利,就必须付出代价,包括错误止损所造成的代价。

坦然面对错误的止损,不要回避,更不必恐惧,只有这样,才能正瑺地交易下去,并且最终获利,这就是笔者对止损的理解,包括对错误止损的理解。

止损应注意的问题

其一,“凡事预则立,不预则废”,所有的止损必须在进场之前设定。做期货投资,必须养成一种良好的习惯,就是在开仓的时候就设置好止损,而在亏损出现时再考虑使用什么标准常为时已晚。

其二,止损要与趋势相结合。趋势有三种:上涨、下跌和盘整。在盘整阶段,价格在某一范围内止损的错误性的概率要大,因此,止损的执行要和趋势相结合。在实践中,笔者以为盘整可视作看不懂的趋势,投资者可以休养生息。

其三,选择交易工具来把握止损点位。这要因人而异,可以是均线、趋势线、形态及其他工具,但必须是适合自己的,不要因为别人用得好你就盲目拿来用。交易工具的确定非常重要,而运用交易工具的能力则会导致完全不同的交易结果。

总之,期货交易注重健全的交易策略,其中资金管理可视为其核心,而止损可视为资金管理的灵魂。惟有作好资金管理、严格止损,才能细水长流,成为市场的常胜将军。

这是我网上拷贝过来的,我都懒得写。

看到这里的朋友 ,是不是也跟我一样?觉得啰里啰唆又长又臭。 你以为我现在才知道止损有多重要吗。好笑 我是知道做不到, 因为止损多了手抖 下不了手了

我想大多数人跟我是一样的 设定好的没能及时止损以致出现大亏 。所以写了个python脚本让电脑去执行止损
话不多说先看效果

在这里插入图片描述

一、使用示例

代码如下(示例):


"""
关注公众号: Ctp接口量化

"""

import time
from 手机版选股 import *
ths_user = Wencai() 
ths_user.login(Config["userid"],Config["password"])# 登陆交易账号 

def 选股():
    # qes = '(成交额/总市值)>5%,成交额>5亿,换手率>5%,量比>2,kdj金叉'
    # qes = '周平均换手率>10%,成交额>10亿'
    # qes = '基金重仓,基金连续6个季度增仓,上市天数大于500,rsi金叉'
    # qes = "rsi上穿70,量比大于2,dea大于0,股价大于60均线,换手率大于3%,涨幅小于5%"
    # qes = "kdj金叉,量比大于3,dea大于0,股价大于60均线,换手率大于3%,涨幅小于5%"
    # qes = "macd上移,量比大于2,dea大于0,股价大于60均线,换手率大于5%,涨幅小于5%"
    # qes = 'rsi3上穿30,涨幅<3%,量比>2'
    # qes = 'macd金叉,dea>0,量比>1,涨幅<3%'
    # qes = '60分钟macd金叉,dea>0,涨幅<3%,量比>2'
    # qes = '周KDJ金叉,量比大于2,换手率大于5%'
    # qes = 'macd金叉,dea>0,量比>1,涨幅<3%'
    # qes = 'rsi24上穿30,dea>0,量比>1,涨幅<3%,非st,非*st'
    qes = '周rsi24上穿30,非st,非*st,量比>1'
    # qes = '连续三年净利润同比增长率大于50%,macd金叉,dea>0,量比>1,涨幅<3%'
    # qes = 'K上穿30,均线多头排列'
    # qes = 'kdj金叉,均线多头排列'
    Data_list = ths_user.Xuangu(qes)
    for i in Data_list:
        print(i["代码"][:-3])
        print(i)      
        开仓 = ths_user.buy(stock_code=i["代码"][:-3],price=i["价格"],amount=1000)      #同花顺
        # print(开仓)          
def 止损止盈(止损=-300,止盈=500):
    ths_user.qryChedan()    # 撤销全部委托
    全部持仓 = ths_user.qryChicang()    # 全部持仓
    for pos in 全部持仓:
        print("="*30)
        print("编号",pos["d_3001"])
        print("证券代码",pos["d_2102"])
        print("证券名称",pos["d_2103"])
        print("可用余额",pos["d_2121"])
        print("成本价",pos["d_2122"])
        print("市价",pos["d_2124"])
        print("市值",pos["d_2125"])
        print("浮动盈亏",pos["d_2147"])
        if float(pos["d_2147"]) <= float(止损) or float(pos["d_2147"]) > float(止盈):
            stock = ths_user.sell( stock_code=pos["d_2102"], price=pos["d_2124"], amount=pos["d_2121"], volume=0, entrust_prop='limit')
            print("平仓")
def 定时():
    while True:
        time.sleep(6)
        _time = time.strftime('%H%M%S')
        if _time == '100100':
            选股()
        # if _time == '102500' or _time == '112500' or _time == '132600' or _time == '142500':
            # 止损止盈() 
        止损止盈()        
if __name__ == '__main__':
    定时()
  • 3
    点赞
  • 38
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论
Python自动选股系统是一种利用Python程序语言来进行股票选股的工具。它可以根据预先设定的选股策略和规则,自动股票市场中筛选出符合条件的股票,并提供相应的买入或卖出信号。 Python自动选股系统的源码包含了各种功能模块和算法,用于实现选股策略自动化执行。源码通常包括以下几个关键部分: 1. 数据源模块:用于获取股票市场的实时或历史数据,例如股票价格、财务数据、市值等。常见的数据源包括股票行情接口、财经网站等。 2. 数据处理模块:用于对获取的股票数据进行处理和分析,例如计算各种指标、比较数据变化等。常见的数据处理方法包括统计分析、数据平滑、数据归一化等。 3. 选股策略模块:根据投资者的需求和偏好,设定相应的选股策略和规则。例如可以基于技术指标、基本面因素、量化模型等进行选股。常见的选股策略包括均线突破、相对强弱指标等。 4. 交易执行模块:根据选股策略生成的买入或卖出信号,自动执行相应的交易操作。这部分需要与实际的交易平台或API进行对接,以实现真实的交易操作。 Python自动选股系统的源码通常借助于第三方库来实现各种功能,例如pandas、numpy、scikit-learn等。这些库提供了丰富的函数和工具,方便进行数据处理、分析和算法实现。 总而言之,Python自动选股系统的源码是一个综合运用Python编程语言和相关库函数,实现股票选股策略自动化执行的工具。通过对股票数据的处理和分析,根据预定的选股策略找到符合条件的股票,并自动生成交易信号,实现自动交易操作。这个源码的设计和实现考虑了数据源的接入、数据处理、选股策略和交易执行等多个方面,以满足投资者对于自动选股的需求。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

投图匠

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值