文章目录

        • 一、故事由来
        • 二、系统介绍
        • 三、学习源码
        • 四、代码转化
        • 五、全部代码
        • 六、回测与总结
        • 六、写在最后

一、故事由来

我的好朋友燃哥观察了这个指标很久,在元旦以前推荐给我,讨论是否可以转化成量化。
可惜拖延症犯了,一直拖到现在才来帮他完成这样一个心愿,其实也是最近对算法的领悟突飞猛进。
估摸着某一天写一个pine的翻译器。一切皆可python。。
好了废话不多说,我们来介绍一下这个传说中的超级趋势线。。

二、系统介绍

CMC Markets 新一代智能交易系统 —— 超级趋势线(Supertrend)
这里有一篇文章介绍这个系统。
在这里插入图片描述

在CMC Markets中的新一代智能交易系统中,在技术指标中选取“超级趋势线”调取即可使用,
如图中所示,可以根据自身喜好对上涨的信号、下跌的信号调节“颜色和粗细”。
那么什么是超趋势指标?在理解超趋势指标公式之前,理解ATR是必要的,因为超趋势使用ATR值来计算指标值。

其中的主要算法下面也有一张图来介绍
在这里插入图片描述

大致看一下,主要描述是HL2(k线均价)乘以n倍ATR的通道。做趋势突破。
但文章写得比较简略。没有详细的算法。随后我想到了最牛的社区Tradingview。
果不奇然。上面果然有。
在这里插入图片描述

从图上看,还是比较切合趋势的。但可惜的是它只是一个Alert的报警信号。

三、学习源码

看着代码还不算太长,那我们就翻译过来试一下吧。!(っ•̀ω•́)っ✎⁾⁾!
在这里插入图片描述
完整pine代码如上。。

四、代码转化

这里我们在FMZ新建一个策略,起名SuperTrade
在这里插入图片描述

接着我们来设置2个参数Factor、Pd
在这里插入图片描述

为了更好的简化代码的操作,便于理解,这样要用到python的高级数据扩展包pandas

中午吃饭的时候我问梦梦老师,FMZ是否支持这个库。下午一看居然可以用了。
梦梦老师真的太厉害了。

1.我们要导入pandas库time库
2.在main函数当中设置使用季度合约(主要跑okex)
3.设定一个循环doTicker()15分钟检测1次。
将代码跑在15分钟的周期上
接着我们在doTicker()中写主要策略。

import pandas as pd
import timedef main():exchange.SetContractType("quarter")preTime = 0Log(exchange.GetAccount())while True:records = exchange.GetRecords(PERIOD_M15)if records and records[-2].Time > preTime:preTime = records[-2].TimedoTicker(records[:-1])Sleep(1000 *60)

4.我们要取回k线的OHCLV 所以用GetRecords()
5.我们将取回的数据导入pandas M15 = pd.DataFrame(records)
6.我们要修改表的头部标签。 M15.columns = [‘time’,‘open’,‘high’,‘low’,‘close’,‘volume’,‘OpenInterest’]
其实就是将’open’,‘high’,‘low’,'close’ 的首字母改成小写,便于后期写代码不要一会大写一会小写。

def doTicker(records):M15 = pd.DataFrame(records)M15.columns = ['time','open','high','low','close','volume','OpenInterest']  

7.给数据集合增加一列hl2 hl2=(high+low)/2

#HL2
M15['hl2']=(M15['high']+M15['low'])/2

8.接着我们来计算ATR
因为ATR的计算要导入一个变量length,它的取值是Pd

接着我们通过查阅麦语言手册,ATR真實波動幅度均值的算法步骤如下:
TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));
ATR : RMA(TR,N)

其中TR的值取下面3个差值的最大一个
1、当前交易日的最高价与最低价间的波幅 HIGH-LOW
2、前一交易日收盘价与当个交易日最高价间的波幅 REF(CLOSE,1)-HIGH)
3、前一交易日收盘价与当个交易日最低价间的波幅 REF(CLOSE,1)-LOW)
所以TR : MAX(MAX((HIGH-LOW),ABS(REF(CLOSE,1)-HIGH)),ABS(REF(CLOSE,1)-LOW));

在python计算中

M15['prev_close']=M15['close'].shift(1)

要先设立一个prev_close 去取close在上一行的数据,也就是将close右移1格成立一个新的参数

ranges= [M15['high'] - M15['low'],M15['high']-M15['prev_close'],M15['low']-M15['prev_close']]

接着定义一个中间变量 记录TR的3个对比值的数组。(HIGH-LOW)(high-prev_close)(low-prev_close)

M15['tr'] = pd.DataFrame(ranges).T.abs().max(axis=1)

我们在数据集合当中定义新的一列取名TR,TR的取值是取中间变量绝对值的最大一个,使用abs()和max()函数

    alpha = (1.0 / length) if length > 0 else 0.5M15['atr']=M15['tr'].ewm(alpha=alpha, min_periods=length).mean()

最后我们要计算ATR的值,ATR : RMA(TR,N),据查RMA的算法其实就是一个固定值变种的EMA算法。
N是我们导入的变量,其中ATR的默认参数是14。这里我们导入alpha=length的倒数。

===

然后用ewm算法计算ema
完整ATR计算过程如下

    #ATR(PD)length=PdM15['prev_close']=M15['close'].shift(1)ranges= [M15['high'] - M15['low'],M15['high']-M15['prev_close'],M15['low']-M15['prev_close']]M15['tr'] = pd.DataFrame(ranges).T.abs().max(axis=1)alpha = (1.0 / length) if length > 0 else 0.5M15['atr']=M15['tr'].ewm(alpha=alpha, min_periods=length).mean()

9始计算Up和Dn

    M15['Up']=M15['hl2']-(Factor*M15['atr'])M15['Dn']=M15['hl2']+(Factor*M15['atr'])

Up=hl2 -(Factor * atr)
Dn=hl2 +(Factor * atr)
是不是很简单呢。

下面是TV当中15行-21行的核心代码段

TrendUp=close[1]>TrendUp[1]? max(Up,TrendUp[1]) : Up
TrendDown=close[1]<TrendDown[1]? min(Dn,TrendDown[1]) : DnTrend = close > TrendDown[1] ? 1: close< TrendUp[1]? -1: nz(Trend[1],1)
Tsl = Trend==1? TrendUp: TrendDownlinecolor = Trend == 1 ? green : red

这一段的主要意思是想表达,
如果处于看涨阶段,(下方线)TrendUp = max(Up,TrendUp[1])
如果处于下跌阶段,(上方线)TrendDown=min(Dn,TrendDown[1])
也就是说在一个趋势中,ATR的值一直在使用一种类似强盗布林策略的技术。
不断将通道的另一侧收窄

这里TrendUp和TrendDown每一次的计算都需要进行自我迭代。
就是每一步都要拿上一步的自己来计算。
所以要对数据集合做循环遍历。

这里先要对数据集合新建字段TrendUp,TrendDown,Trend,linecolor。并给定他们一个初始值
接着使用fillna(0)语法将之前计算的结果中带有空值的数据填上0

    M15['TrendUp']=0.0M15['TrendDown']=0.0M15['Trend']=1M15['Tsl']=0.0M15['linecolor']='Homily'M15 = M15.fillna(0)

启用一个for循环
在循环中采用python三目运算

    for x in range(len(M15)):

计算TrendUp
TrendUp = MAX(Up,TrendUp[-1]) if close[-1]>TrendUp[-1] else Up
大致意思是 如果 上一个close>上一个TrendUp,成立取Up和上一个TrendUp当中最大的值,不成立取Up值,并传递给当前TrendUp

        M15['TrendUp'].values[x] = max(M15['Up'].values[x],M15['TrendUp'].values[x-1]) if (M15['close'].values[x-1]>M15['TrendUp'].values[x-1]) else M15['Up'].values[x]

同理,计算TrendDown
TrendDown=min(Dn,TrendDown[-1]) if close[-1]<TrendDown[-1] else Dn
大致意思是 如果 上一个close<上一个TrendDown,成立取Dn和上一个TrendDown当中最小的值,不成立取Dn值,并传递给当前TrendDown

        M15['TrendDown'].values[x] = min(M15['Dn'].values[x],M15['TrendDown'].values[x-1]) if (M15['close'].values[x-1]<M15['TrendDown'].values[x-1]) else M15['Dn'].values[x]

下面是计算控制方向的flag,我简化了一下伪代码
Trend= 1 if (close > TrendDown[-1]) else (x)
x = -1 if (close< TrendUp[-1]) else Trend[-1]

意义是是 如果 收盘价>上一个 TrendDown 则取1(看多) 不成立取x
如果 收盘价<上一个 TrendUp 则取-1(看空)不成立取上一个Trend (意思是是不变)
翻译成图像语言就是突破上轨转换flag看多,突破下轨转换flag看空,其他时间不变。

        M15['Tsl'].values[x] = M15['TrendUp'].values[x] if  (M15['Trend'].values[x]==1) else M15['TrendDown'].values[x]

计算Tsl和Linecolor
Tsl= rendUp if (Trend1) else TrendDown
Tsl 是用来在图像上表示SuperTrend 的值。意思是看多的时候在图上标记下轨,看空的时候在图上标记上轨。
linecolor= ‘green’ if (Trend
1) else ‘red’
linecolor 的含义是 如果看多 则标记绿线 ,如果看空则标记空色(主要是用途Tradingview展示)

        M15['Tsl'].values[x] = M15['TrendUp'].values[x] if  (M15['Trend'].values[x]==1) else M15['TrendDown'].values[x]M15['linecolor'].values[x]= 'green' if ( M15['Trend'].values[x]==1) else  'red'

接着23-30行的代码主要是plot绘图 这里不做详解。

最后还有2行代码用于买入卖出信号控制
Tradingview中,他的含义是 反转了Flag以后给出信号
将条件语句转换成为python。
如果上一个Trend flag从-1变成1 代表突破上方阻力 开多
如果上一个Trend flag从1变成-1 代表突破下发支撑 开空

    if(M15['Trend'].values[-1] == 1 and M15['Trend'].values[-2] == -1):Log('SuperTrend V.1 Alert Long',"Create Order Buy)if(M15['Trend'].values[-1] == -1 and M15['Trend'].values[-2] == 1):Log('SuperTrend V.1 Alert Long',"Create Order Sell)

本段完整代码如下:

    M15['TrendUp']=0.0M15['TrendDown']=0.0M15['Trend']=1M15['Tsl']=0.0M15['linecolor']='Homily'M15 = M15.fillna(0)for x in range(len(M15)):M15['TrendUp'].values[x] = max(M15['Up'].values[x],M15['TrendUp'].values[x-1]) if (M15['close'].values[x-1]>M15['TrendUp'].values[x-1]) else M15['Up'].values[x]M15['TrendDown'].values[x] = min(M15['Dn'].values[x],M15['TrendDown'].values[x-1]) if (M15['close'].values[x-1]<M15['TrendDown'].values[x-1]) else M15['Dn'].values[x]M15['Trend'].values[x] = 1 if (M15['close'].values[x] > M15['TrendDown'].values[x-1]) else ( -1 if (M15['close'].values[x]< M15['TrendUp'].values[x-1])else M15['Trend'].values[x-1] )M15['Tsl'].values[x] = M15['TrendUp'].values[x] if  (M15['Trend'].values[x]==1) else M15['TrendDown'].values[x]M15['linecolor'].values[x]= 'green' if ( M15['Trend'].values[x]==1) else  'red'if(M15['Trend'].values[-1] == 1 and M15['Trend'].values[-2] == -1):Log('SuperTrend V.1 Alert Long',"Create Order Buy)Log('Tsl=',Tsl)if(M15['Trend'].values[-1] == -1 and M15['Trend'].values[-2] == 1):Log('SuperTrend V.1 Alert Long',"Create Order Sell)Log('Tsl=',Tsl)

在这里插入图片描述
在这里插入图片描述

五、全部代码

我调整了一下整体的代码结构。
并将做多做空相关下单指令合并到策略中。
下面是完整代码

'''backtest
start: 2019-05-01 00:00:00
end: 2020-04-21 00:00:00
period: 15m
exchanges: [{"eid":"Futures_OKCoin","currency":"BTC_USD"}]
'''import pandas as pd
import timedef main():exchange.SetContractType("quarter")preTime = 0Log(exchange.GetAccount())while True:records = exchange.GetRecords(PERIOD_M15)if records and records[-2].Time > preTime:preTime = records[-2].TimedoTicker(records[:-1])Sleep(1000 *60)def doTicker(records):#Log('onTick',exchange.GetTicker())M15 = pd.DataFrame(records)#Factor=3#Pd=7M15.columns = ['time','open','high','low','close','volume','OpenInterest']  #HL2M15['hl2']=(M15['high']+M15['low'])/2#ATR(PD)length=PdM15['prev_close']=M15['close'].shift(1)ranges= [M15['high'] - M15['low'],M15['high']-M15['prev_close'],M15['low']-M15['prev_close']]M15['tr'] = pd.DataFrame(ranges).T.abs().max(axis=1)alpha = (1.0 / length) if length > 0 else 0.5M15['atr']=M15['tr'].ewm(alpha=alpha, min_periods=length).mean()M15['Up']=M15['hl2']-(Factor*M15['atr'])M15['Dn']=M15['hl2']+(Factor*M15['atr'])M15['TrendUp']=0.0M15['TrendDown']=0.0M15['Trend']=1M15['Tsl']=0.0M15['linecolor']='Homily'M15 = M15.fillna(0)for x in range(len(M15)):M15['TrendUp'].values[x] = max(M15['Up'].values[x],M15['TrendUp'].values[x-1]) if (M15['close'].values[x-1]>M15['TrendUp'].values[x-1]) else M15['Up'].values[x]M15['TrendDown'].values[x] = min(M15['Dn'].values[x],M15['TrendDown'].values[x-1]) if (M15['close'].values[x-1]<M15['TrendDown'].values[x-1]) else M15['Dn'].values[x]M15['Trend'].values[x] = 1 if (M15['close'].values[x] > M15['TrendDown'].values[x-1]) else ( -1 if (M15['close'].values[x]< M15['TrendUp'].values[x-1])else M15['Trend'].values[x-1] )M15['Tsl'].values[x] = M15['TrendUp'].values[x] if  (M15['Trend'].values[x]==1) else M15['TrendDown'].values[x]M15['linecolor'].values[x]= 'Long' if ( M15['Trend'].values[x]==1) else  'Short'linecolor=M15['linecolor'].values[-2]close=M15['close'].values[-2]Tsl=M15['Tsl'].values[-2] if(M15['Trend'].values[-1] == 1 and M15['Trend'].values[-2] == -1):Log('SuperTrend V.1 Alert Long','Create Order Buy')Log('Tsl=',Tsl)position = exchange.GetPosition()if len(position) > 0:Amount=position[0]["Amount"]exchange.SetDirection("closesell")exchange.Buy(_C(exchange.GetTicker).Sell*1.01, Amount);exchange.SetDirection("buy")exchange.Buy(_C(exchange.GetTicker).Sell*1.01, vol);if(M15['Trend'].values[-1] == -1 and M15['Trend'].values[-2] == 1):Log('SuperTrend V.1 Alert Long','Create Order Sell')Log('Tsl=',Tsl)position = exchange.GetPosition()if len(position) > 0:Amount=position[0]["Amount"]exchange.SetDirection("closebuy")exchange.Sell(_C(exchange.GetTicker).Buy*0.99,Amount);exchange.SetDirection("sell")exchange.Sell(_C(exchange.GetTicker).Buy*0.99, vol*2);

公开策略连接https://www.fmz.com/strategy/200625

六、回测与总结

我们选取了近一年的数据进行回测。
使用okex季度合约 15分钟周期。
设定的参数是,
Factor=3
Pd=45
vol=100(每次下单100张)
所得年化收益,约33%。
总体来说回撤并不是很大,
其中主要是312的大跌对系统产生了比较大的冲击,
如果没有312的话收益应该会比较好看。

在这里插入图片描述

六、写在最后

SuperTrend是一个非常不错的交易系统

SuperTrend系统的主要原理是采用ATR通道突破策略(类似于肯特通道)
但其变化的地方主要在于使用了强盗布林的收窄策略,或者说是逆向的唐奇安原理。
在行情运行中不断收窄上下通道。
以便达到通道突破转向的操作。(一旦通道突破,上下轨恢复初始值)

我在TradingView上把up dn TrendUp TrendDn 分别plot了出来
这样便于更好的理解这个策略

一目了然
在这里插入图片描述

另外github上还有一个js的版本。js我不是很懂,但从if语句看好像有点问题。
地址是https://github.com/Dodo33/gekko-supertrend-strategy/blob/master/Supertrend.js

最后我去追查了一下原版。
它发表在2013.05.29
作者是Rajandran R
C++代码发表在Mt4论坛https://www.mql5.com/en/code/viewcode/10851/128437/Non_Repainting_SuperTrend.mq4
我大致看懂了C++的意思,有机会再重写一份。

希望大家可以从中学到精髓。
难搞哦。~!

查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 数字型--类型转换

    1. 类型转换分为 自动类型转换和强制类型转换2. 自动类型转换(我们不用手动处理)将小范围的数值赋值给大范围的变量!只要遵循范围的规则:【类型转换都是数字型的!布尔类型不参与类型转换!】byte--->>short--->>>int--->>long--->>float--->&…...

    2024/4/24 9:49:26
  2. JavaEE三处架构

    web层: 1, 获取请求参数,封装bean对象 2, 调用Serice层处理业务 3, 响应数据给客户端请求转发,重定向 Service业务层: 1, 处理业务逻辑 2, 调用持久层保存到数据库 Dao持久层 Dao持久层,只负责跟数据库交互...

    2024/4/24 9:49:25
  3. kafka开启jmx使用jconsole进行监控

    1. 修改Kafka安装目录下bin中kafka-run-class.sh 文件 增加如下内容 -Djava.rmi.server.hostname=10.139.12.15增加后# JMX settings if [ -z "$KAFKA_JMX_OPTS" ]; thenKAFKA_JMX_OPTS="-Dcom.sun.management.jmxremote -Dcom.sun.management.jmxremote.authen…...

    2024/4/24 9:49:32
  4. liunx下的hadoop的简介与安装

    Hadoop是一款可靠的、可伸缩的、分布式计算的开源软件。是一个框架、允许跨越计算机集群的大数据集处理,使用简单的编程模型(MaoReduce)。可从单个服务器扩展到几千台主机,每个节点提供了计算和存储的功能。而不是依赖高可用性的机器,依赖于应用层面上的实现Hadoop有四大模块…...

    2024/4/24 9:49:23
  5. 『ACM-算法-二分法』在单调递增序列a中查找小于等于x的数中最大的一个(即x或x的前驱)

    写在前面:我们主要还是分享算法的模板,而不是去刨析算法的原理!定义: 二分答案是指在答案具有单调性的前提下,利用二分的思想枚举答案,将求解问题转化为验证结果。 流程: 首先需要估计答案的上下界,然后不断取区间中点进行验证(这就要求答案的验证应当简单可行),并通…...

    2024/4/22 16:51:50
  6. 用pl\sql借助ODAC远程连接oracle数据库

    1.首先用SVN将相关文件导入到本地2.然后打开ODAC按照要求安装 可能会有一些日志文件下载错误,但我感觉应该没啥大问题 3.安装pl\sql(这里就没有什么问题,按要求安装就好了) 4.编辑tnsnames文件 在安装好了ODAC后就应该在一下路径能够找到,按照相应的ip地址编辑tnsname文件然…...

    2024/4/17 23:50:55
  7. maven打包没有主清单属性

    1.目录结构2.修改pom配置<!--直接用maven打的包是无法用java -jar命令运行的 因为没办法找到入口类, 即main方法 那么需要加上maven的插件配置--><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>…...

    2024/4/18 21:59:14
  8. ubuntu互相切换Python2和Python3(不必卸载Python2)

    安装完Ubuntu后,一般默认的Python版本是2.7.x,但由于Python2和Python3的语法差别比较大,那么如何在Python2和Python3之间灵活切换而又不用卸载Python呢? 1.切换到/usr/bin目录下,然后查看所有可用的python版本 cd /usr/bin ls |grep python2.查看默认python版本,我的是3.…...

    2024/4/26 1:45:31
  9. 计算机保研夏令营准备流程建议

    计算机保研夏令营准备流程建议写在前面一、什么时候开始准备?准备的流程是什么?二、如何确定自己的读研意向及方向?建议完成时间:大三上学期是否读研?读研类型?读研方向?三、如何确定目标院校和招生途径?建议完成时间:大三寒假如何确定目标院校?如何确定招生途径?四…...

    2024/4/26 12:27:16
  10. 【经验贴】毕业论文+答辩 经验

    受2020疫情影响,整体来说老师的要求都有所下降,只要有用心做过,不是水的过分,都能过。写论文的经验目录结构一般是 1.绪论(文献综述部分,国内外的研究现状以及这次研究的创新点和意义) 2.理论研究(这次设计所涉及的理论部分) 3.自己做的设计内容 4.实验、验证等 5.总结…...

    2024/4/16 9:36:23
  11. 温故知新-多线程-深入刨析synchronized

    Posted by 微博@Yangsc_o 原创文章,版权声明:自由转载-非商用-非衍生-保持署名 | Creative Commons BY-NC-ND 3.0文章目录摘要synchronized的基础用法synchronized原理字节码理解认识 Java Monitor Object代码验证虚拟机实现原理一个对象的内存布局对象头对象实际数据对齐填充…...

    2024/4/16 9:36:38
  12. 分布式计算模式之流水线

    前言 在分布式领域中解决类似具有依赖关系的流水线作业的计算模式,叫作流水线计算模式。其实,流水线计算模式就是将一个任务拆分为多个步骤(子任务),然后多个这样的任务通过对步骤(子任务)的重叠执行,以实现数据并行处理的场景。 这种流水线模式在计算机领域中最先用于…...

    2024/4/16 9:36:38
  13. 人工神经网络之深度学习之股市庄家操作分析03

    武当和少林作为武侠小说里面天下武功之鼻祖,原本是宗教圣地,却变成武林之首。气功作为武侠小说里面神乎其神的东西,变成特异功能的发源地。其实,古代的人很早就发现,人类需要空气,空气是看不见的,但是可以摸得着。风吹到人的身上,会感觉得到。风把灰尘吹起来的时候,把…...

    2024/4/24 9:49:23
  14. 腾讯云安全组创建以及配置流程介绍

    腾讯云安全组创建以及配置流程介绍 腾讯云服务器购买之后,如果在购买过程中我们没有设置好安全组规则,那么在购买之后,我们要做的第一件事就是设置好安全组规则,否则服务器很多功能我们是无法使用的,下面赵一八笔记教下大家腾讯云安全组是如何创建以及配置的: 安全组创建…...

    2024/4/24 9:49:21
  15. iOS URL Loading System 简介

    1 总览 URL Loading System 提供获取资源的能力通过URLs,使用标准https协议或者是开发者自定义的协议。使用标准Internet协议与URL交互并与服务器通信。且加载执行的过程是异步的,保证了应用界面响应与处理加载数据的同时执行。 您可以使用一个URLSession实例来创建一个或多个…...

    2024/4/24 9:49:22
  16. 云原生是企业数字化转型的通关密码的原因

    导读2020年,受疫情影响,谁家企业的日子都不好过。但是,如果把互联网企业和传统企业放在一起进行对比,就会发现,后者已被无形碾压。为什么传统企业或者是行业压力更大?2020年,受疫情影响,谁家企业的日子都不好过。但是,如果把互联网企业和传统企业放在一起进行对比,就…...

    2024/4/24 9:49:20
  17. CIO40: “数字化转型”是万能药?

    2020 数字化转型是万能药?脚踏实地,一步步来,有可能是个大坑 适合才是万能药 顺应时代潮流而已 毒药才是万能药,一了百了 转型两个字要琢磨下 转型是万能的,前面定语。。。。 更多像春药 灵魂③问:1什么是数字化?2转什么?3怎么转? 要么找死要么等死,找死可能是向死而…...

    2024/4/24 9:49:21
  18. 三行按键扫描

    新型的按键扫描程序 不过我在网上游逛了很久,也看过不少源程序了,没有发现这种按键处理办法的踪迹,所以,我将他共享出来,和广大同僚们共勉。我非常坚信这种按键处理办法的便捷和高效,你可以移植到任何一种嵌入式处理器上面,因为C语言强大的可移植性。 同时,这里面用到了…...

    2024/4/27 21:23:41
  19. 处理移动端首页返回键不能返回到登录页面的问题

    前言在开发项目时,总会遇到首页点击返回键就会跑到登录页去,登录页点击返回又跑到其他页面,为了防止这种现象发生,个人联合了两种方法解决的这个问题,第一种是通过监听来阻止此事件发生,第二种是利用vue的导航守卫来阻止。 方法一当在首页时,不想返回到登录页,我采用第…...

    2024/4/24 9:49:17
  20. NLP的顶会

    ACL、EMNLP、NAACL - HLT、COLING 是 NLP 领域的四大顶会 其中ACL和EMNLP特别受到关注,如果关注一些好的最新的工作,就看这个两个会议,在里面搜一下你所做的方向的文章...

    2024/4/24 9:49:16

最新文章

  1. go 安装软件报go.mod file not found

    执行 go get -u github.com/go-sql-driver/mysql 下载mysql 报错 解决方法: 控制台&#xff1a;输入go env 返回如下&#xff1a; 红圈值为NUL&#xff0c;需要设置GOMOD的值, 然后再控制台执行 &#xff08;1&#xff09;mkdir mod (2)go mod init mod 然后再执行下载&…...

    2024/4/27 21:31:00
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 记录我第一场面了40min+的面试

    中冶赛迪信息技术(重庆)有限公司 国企 首先3/24投递的&#xff0c;4/10打了电话问是否接受劳务派遣&#xff0c;我当时不知道劳务派遣什么意思&#xff0c;问了和售前售后是不是类似&#xff0c;得到了不大一样的回答&#xff0c;后面加了微信&#xff0c;定了11开始面试。 这…...

    2024/4/27 9:25:32
  4. Java深度优先搜索DFS(含面试大厂题和源码)

    深度优先搜索&#xff08;Depth-First Search&#xff0c;简称DFS&#xff09;是一种用于遍历或搜索树或图的算法。DFS 通过沿着树的深度来遍历节点&#xff0c;尽可能深地搜索树的分支。当节点v的所在边都已被探寻过&#xff0c;搜索将回溯到发现节点v的那条边的起始节点。这个…...

    2024/4/27 12:46:58
  5. 文件系统 FTP Ubuntu 安装入门介绍

    FTP 环境: Ubuntu 14.04 blog zh_CN ubuntu14.04 Install 全新安装&#xff1a;apt-get install vsftpd 重新安装:apt-get --reinstall install vsftpd 卸载并清除配置文件&#xff1a;apt-get --purge remove vsftpd Start & Restart $ service vsftpd start $ se…...

    2024/4/26 19:07:53
  6. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/4/26 18:09:39
  7. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/4/26 20:12:18
  8. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/4/26 23:05:52
  9. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/4/27 4:00:35
  10. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/4/27 17:58:04
  11. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/4/27 14:22:49
  12. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/4/26 21:56:58
  13. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/4/27 9:01:45
  14. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/4/27 17:59:30
  15. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/4/25 18:39:16
  16. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/4/25 18:39:16
  17. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/4/26 19:03:37
  18. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/4/26 22:01:59
  19. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/4/25 18:39:14
  20. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/4/26 23:04:58
  21. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/4/25 2:10:52
  22. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/4/25 18:39:00
  23. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/4/26 19:46:12
  24. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/4/27 11:43:08
  25. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/4/27 8:32:30
  26. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  27. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  28. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  29. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  30. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  31. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  32. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  33. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  34. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  35. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  36. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  37. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  38. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  39. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  40. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  41. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  42. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  43. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  44. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  45. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57