精华内容
下载资源
问答
  • 外汇货币相关性分析

    2020-03-16 11:31:14
    相关性(correlation)是指,两个不同品种间的线性关联强度,范围在-1到1之间。 相关性越靠近-1,说明两者之间的负相关性相关性越靠近+1,说明两者之间的正相关性相关性在0附近,说明两者之间并不存在...

    外汇交易中经常用到的一种分析方法是相关性分析。通过回溯历史数据,找出不同品种间的关联性,对于开发交易策略,验证交易策略,回避风险等都有很好的作用。

    1. 什么是相关性?

    相关性(correlation)是指,两个不同品种间的线性关联强度,范围在-1到1之间。
    相关性越靠近-1,说明两者之间的负相关性越强。相关性越靠近+1,说明两者之间的正相关性越强。
    相关性在0附近,说明两者之间并不存在明显相关性。

    相关性的公式表述为:
    correlation
    r即是相关系数,它等于两个品种的协方差除以不同品种的方差乘积的根。
    其中,协方差的公式为:
    covariance
    和方差有些类似,只不过里面变成了两个不同品种的乘积。
    协方差为正,说明两个品种为正相关。协方差为负,说明两个品种为负相关。协方差的大小与相关性无关。

    1. 外汇货币对相关性
      这里我的分析数据来源于MT4历史数据,通过导出csv后再导入到python进行分析。
      MT4
      在这里插入图片描述
      这里分析的品种是EURUSD,GBPUSD,标普500,USDJPY和现货黄金。分析周期是2018年到2020年的走势。收盘价Normalized后的对数收益率加和结果如下:
      在这里插入图片描述
      2018-2020的correlation结果如下:
      在这里插入图片描述
      其中,美日,黄金与标普500之间的存在一定的联动关系。

    kde函数结果如下:

    kde

    资源下载地址:
    //download.csdn.net/download/jAEgerrr/12251363

    展开全文
  • 相关性和显著性检验学习笔记

    万次阅读 2018-09-07 14:49:51
    相关性分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度。相关性的元素之间需要存在一定的联系或者概率才可以进行相关性分析,反应的线性相关程度的量,比如:流量和收入,...

           相关性分析是指对两个或多个具备相关性的变量元素进行分析,从而衡量两个变量因素的相关密切程度。相关性的元素之间需要存在一定的联系或者概率才可以进行相关性分析,反应的线性相关程度的量,比如:流量和收入,收入和顾客、订单等的关系,就具有相关性。

    相关性分为正向相关、负相关、不相关(不存在线性关系、可能存在其他关系)、强相关、弱相关

    为什么要对相关系数进行显著性检验?
           因为相关系数通常是根据样本数据计算出来的。由于样本是随机性的,相关系数是一个随机变量,其取值具有一定的偶然性。两个不相关的变量,其相关系数也可能较高,这在统计上称为虚假相关。要从样本相关系数判断总体中是否也有这样的关系,则需要对相关系数进行统计检验后才能得出结论。

    相关性高对模型结果影响多重共线性、无显著变量,如果是多元线性模型或者逻辑回归的话,会造成变量系数与实际意义矛盾的结果

    只有显著性水平显著时,相关系数才是可信的,相关性检验correlation test是对变量之间是否相关以及相关的程度如何所进行的统计检验。变量之间的相关的程度用相关系数r表征。当r大于给定显著性水平a和一定自由度f下的相关系数临界值T"a、时,表示变量之间在统计上存在相关关系。否则,则不存在相关关系。也就说只看相关系数是说明不了问题的,还得看显著性,而且还是显著性水平显著的时候,就可以说明相关系数论证的点可信的。

    显著性检验(significance test)就是事先对总体(随机变量)的参数或总体分布形式做出一个假设,然后利用样本信息来判断这个假设(备择假设)是否合理,即判断总体的真实情况与原假设是否有显著性差异。或者说,显著性检验要判断样本与我们对总体所做的假设之间的差异是纯属机会变异,还是由我们所做的假设与总体真实情况之间不一致所引起的。 显著性检验是针对我们对总体所做的假设做检验,其原理就是小概率事件实际不可能性原理来接受或否定假设。

    显著性检验即用于实验处理组与对照组或两种不同处理的效应之间是否有差异,以及这种差异是否显著的方法。
    常把一个要检验的假设记作H0,称为原假设(或零假设) (null hypothesis) ,与H0对立的假设记作H1,称为备择假设(alternative hypothesis) 。
    ⑴ 在原假设为真时,决定放弃原假设,称为第一类错误,其出现的概率通常记作α;
    ⑵ 在原假设不真时,决定不放弃原假设,称为第二类错误,其出现的概率通常记作β
    (3)α+β 不一定等于1 [1]  。
    通常只限定犯第一类错误的最大概率α, 不考虑犯第二类错误的概率β。这样的假设 检验又称为显著性检验,概率α称为显著性水平。
    最常用的α值为0.01、0.05、0.10等。一般情况下,根据研究的问题,如果放弃真假设损失大,为减少这类错误,α取值小些 ,反之,α取值大些。

    展开全文
  • 1、动态类型语言(不少人误以为弱类型)不要傻傻分不清2、动态还是静态编译期还是运行期确定类型3、类型不会发生隐式类型转换若类型语言类型语言4、python作为后端语言优缺点1、胶水语言、轮子多...

    一、python是静态还是动态类型?是强类型还是弱类型?

    1、动态强类型语言(不少人误以为是弱类型)

    不要傻傻分不清

    2、动态还是静态指的是编译期还是运行期确定类型

    3、强类型指的是不会发生隐式类型转换

    若类型语言

    强类型语言

    4、python作为后端语言优缺点

    1、胶水语言、轮子多、应用广泛

    2、语言灵活、生产力高

    3、性能问题、代码维护问题、python2/2兼容问题

    动态语言一时爽、代码重构火葬场

    二、什么是鸭子类型

    当看到一只鸟走起来想鸭子、有用起来像鸭子、叫起来也想鸭子、那么这只鸟就可以被称为鸭子

    1、关注点在对象的行为,而不是类型(duck typing)

    2、比如 file、StringIO,socket对象都支持read/write方法(file like object)

    2、在比如定义了 _iter_魔术方法的队形可以用for迭代

    代码验证

    1、代码

    class Duck():

    def quack(self):

    print("gua gua")

    class Person:

    def quack(self):

    print("我是人类,但我也会 gua gua gua")

    def in_the_forest(duck):

    duck.quack()

    def game():

    donald = Duck()

    john = Person()

    in_the_forest(donald)

    in_the_forest(john)

    print(type(donald))

    print(type(john))

    print(isinstance(donald,Duck))

    print(isinstance(john,Person))

    game()

    2、输出结果

    duck_type.py

    gua gua

    我是人类,但我也会 gua gua gua

    True

    True

    Process finished with exit code 0

    三、什么是monkey patch?那些地方用到了?自己如何实现?

    1、所谓的monkey patch就是运行时替换

    2、比如gevent库需要修改内置的socket

    3、from gevent import monkey;monkey.patch_socket()

    1、安装gevent

    1.在https://pypi.org/project/gevent/#files下载你需要的gevent版本,保存到一个文件夹中

    2.在cmd中,cd到你Python的Script下进行安装

    3.cd 到你下载好的gevent 路径

    4.进入gevent路径的系统盘中

    5.pip install 下载好的gevent模块名

    2、gevent库需要修改内置的socket

    import socket

    import gevent

    print(socket.socket)

    print("After momkey patch")

    from gevent import monkey

    monkey.patch_socket()

    print(socket.socket)

    import select

    print(select.select)

    monkey.patch_socket()

    print("After momkey patch")

    print(select.select)

    输出如下:

    monkey_path.py

    After momkey patch

    After momkey patch

    3、自己实现monkey patch

    import socket

    import gevent

    print(socket.socket)

    print("After momkey patch")

    from gevent import monkey

    monkey.patch_socket("After momkey patch")

    print(socket.socket)

    import select

    print(select.select)

    monkey.patch_socket()

    print("After momkey patch")

    print(select.select)

    import time

    print(time.time())

    def _time():

    return 1234

    time.time = _time

    print(time.time())

    输出结果如下:

    monkey_path.py

    After momkey patch

    After momkey patch

    1564107393.6268823

    1234

    Process finished with exit code 0

    四、什么是自省?

    运行时判断一个对象的类型的能力

    python一切皆对象、用type、id、isinstance获取对象类型信息

    ll = [1, 2, 3]

    d = dict(a=1) #{a:1}

    print(type(ll))

    print(type(d))

    print(isinstance(ll, list))

    print(isinstance(d, dict))

    def add(a, b):

    if isinstance(a, int):

    return a + b

    elif isinstance(a, str):

    return a.upper()+b

    print(add(1, 2))

    print(add(‘head‘, ‘tail‘))

    输出结果如下:

    introspection.py

    True

    True

    3

    HEADtail

    Process finished with exit code 0

    Inspect模块提供了更多获取时对象信息的函数

    ll = [1, 2, 3]

    d = dict(a=1) #{a:1}

    print(type(ll))

    print(type(d))

    print(isinstance(ll, list))

    print(isinstance(d, dict))

    def add(a, b):

    if isinstance(a, int):

    return a + b

    elif isinstance(a, str):

    return a.upper()+b

    print(add(1, 2))

    print(add(‘head‘, ‘tail‘))

    print(id(ll))

    print(id(d))

    print(ll is d)

    print(ll is ll)

    输出结果如下:

    introspection.py

    True

    True

    3

    HEADtail

    17718152

    17742664

    False

    True

    Process finished with exit code 0

    五、什么是列表和字典推导

    比如[i for i in range(10) if i % 2 == 0]

    一种快速生成list/dict/set的方式,用来替代map/filter等

    (i for i in range(10) if i % 2 == 0)返回生成器

    a = [‘a‘, ‘b‘, ‘c‘]

    b =[1, 2, 3]

    # d = {‘a‘:1, ‘b‘:2, ‘c‘:3}

    d = {}

    for i in range(len(a)):

    d[a[i]] = b[i]

    print(d)

    d = {k: v for k, v in zip(a,b)}

    print(d)

    输出结果:

    compresion.py

    {‘c‘: 3, ‘b‘: 2, ‘a‘: 1}

    {‘c‘: 3, ‘b‘: 2, ‘a‘: 1}

    六、知道python之禅吗?

    Tim Peters 编写的关于Python编写的准则

    import this

    编程拿不准的时候可以参考

    In [8]: import this

    The Zen of Python, by Tim Peters

    Beautiful is better than ugly.

    Explicit is better than implicit.

    Simple is better than complex.

    Complex is better than complicated.

    Flat is better than nested.

    Sparse is better than dense.

    Readability counts.

    Special cases aren‘t special enough to break the rules.

    Although practicality beats purity.

    Errors should never pass silently.

    Unless explicitly silenced.

    In the face of ambiguity, refuse the temptation to guess.

    There should be one-- and preferably only one --obvious way to do it.

    Although that way may not be obvious at first unless you‘re Dutch.

    Now is better than never.

    Although never is often better than *right* now.

    If the implementation is hard to explain, it‘s a bad idea.

    If the implementation is easy to explain, it may be a good idea.

    Namespaces are one honking great idea -- let‘s do more of those!

    Python语言基础考察点:python语言基础常见考题(一)

    展开全文
  • 基本解释 高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,... 所谓高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。 低耦合 耦合:一个软件结构内不同模块...

    基本解释

    高内聚低耦合,是软件工程中的概念,是判断设计好坏的标准,主要是面向对象的设计,主要是看类的内聚性是否高,耦合度是否低。

    高内聚

    内聚就是一个模块内各个元素彼此结合的紧密程度,高内聚就是一个模块内各个元素彼此结合的紧密程度高。

    所谓高内聚是指一个软件模块是由相关性很强的代码组成,只负责一项任务,也就是常说的单一责任原则。

    低耦合

    耦合:一个软件结构内不同模块之间互连程度的度量(耦合性也叫块间联系。指软件系统结构中各模块间相互联系紧密程度的一种度量。模块之间联系越紧密,其耦合性就越强,模块的独立性则越差,模块间耦合的高低取决于模块间接口的复杂性,调用的方式以及传递的信息。) 对于低耦合,粗浅的理解是:

    一个完整的系统,模块与模块之间,尽可能的使其独立存在。

    也就是说,让每个模块,尽可能的独立完成某个特定的子功能。

    模块与模块之间的接口,尽量的少而简单。

    如果某两个模块间的关系比较复杂的话,最好首先考虑进一步的模块划分。

    这样有利于修改和组合。

    为什么要追求高内聚和低耦合

    软件架构设计的目的简单说就是在保持软件内在联系的前提下,分解软件系统,降低软件系统开发的复杂性,而分解软件系统的基本方法无外乎分层和分割。但是在保持软件内在联系的前提下,如何分层分割系统,分层分割到什么样的力度,并不是一件容易的事,这方面有各种各样的分解方法,比如:关注点分离,面向方面,面向对象,面向接口,面向服务,依赖注入,以及各种各样的设计原则等,而所有这些方法都基于高内聚,低耦合的原则。高内聚和低耦合是相互矛盾的,分解力度越粗的系统耦合性越低,分解力度越细的系统内聚性越高,过度低耦合的软件系统,软件模块内部不可能高内聚,而过度高内聚的软件模块之间必然是高度依赖的,因此如何兼顾高内聚和低耦合是软件架构师功力的体现。

    高内聚,低耦合的系统有什么好处呢?事实上,短期来看,并没有很明显的好处,甚至短期内会影响 系统的开发进度,因为高内聚,低耦合的系统对开发设计人员提出了更高的要求。高内聚,低耦合的好处体现在系统持续发展的过程中,高内聚,低耦合的系统具有更好的重用性,维护性,扩展性,可以更高效的完成系统的维护开发,持续的支持业务的发展,而不会成为业务发展的障碍。

    转载于:https://www.cnblogs.com/ahwwmb/archive/2012/09/24/2700256.html

    展开全文
  • 高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。 低耦合是:一个完整的系统,模块与模块之间,尽可能的使其独立存在。 内聚性又称块内联系。指模块的功能强度的...
  • 基本解释 高内聚低耦合,是软件工程中的概念,... 所谓高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。低耦合 耦合:一个软件结构内不同模块之间互连程度的度量(耦合性
  • 因果推断——简介

    2020-11-15 23:20:30
    相关性是指在观测到的数据分布中,X与Y相关,如果我们观测到X的分布,就可以推断出Y的分布因果性是指在操作/改变X后,Y随着这种操作/改变也变化,则说明X是Y的因cause 在常用的机器学习算法中,关注的是特征之间的...
  • 新视角看面向对象 与 UML图什么是内聚性 closely the operations in a routine are ...所谓高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。低内聚就是
  • 机器学习实践(五)—sklearn之特征降维

    千次阅读 热门讨论 2018-11-25 11:46:28
    降维是指在某些限定条件下,降低随机变量(特征)个数,得到一组“不相关”主变量的过程 降维的作用 减少特征数量 减少特征相关性,去除相关性强的特征,比如 相对湿度与降雨量 降维的两种方式 特征选择 ...
  • 跨品种套利 - 期货

    2020-12-09 14:22:47
    套利是指在买入或卖出一种金融资产的同时卖出或买入另一种相关的金融资产从中利用价差获得套利的过程。 什么是跨品种套利? 当两个合约有很相关性时,可能存在相似的变动关系,两种合约之间的价差会维持在一定...
  • Spring是什么 轻量级 控制反转(IoC)和面向切面(AOP)的容器 框架 轻量级:指的是从大小和开销两方面而言,Spring都是轻量的。 控制反转(IoC):通过控制反转的技术达到松...//高内聚是指一个软件模块是由相关性
  • 2020-12-08

    2020-12-08 14:47:00
    外部链接又叫“反向链接”或“导入链接”,是指其他网站的链接指向你的网站-外部链接包括:单向外链和双向外链(友情链接) * 外部链接的意义 -增加网站权重-提高网站关键词排名-提高网站流量 * 外部链接建设的注意...
  • 高内聚低耦合

    2016-09-27 19:22:09
    什么是“高内聚低耦合” 基本解释 高内聚低耦合,是软件工程中的概念,是判断设计...所谓高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。 低耦合 耦合:一个软件结
  • 时序数据是指时间序列数据。时间序列数据是同一指标按时间顺序记录的数据列。在同一数据列中的各个数据必须是同口径的,要求具有可比性。时序数据可以是【时期数】,也可以【时点数】。时间序列分析的目的是通过找出...
  • 两个核心概念(相关性)不一致。 分析:指出两个概念不一致的。为什么不一致? 模板:论证中先后使用了A与B两个核心概念,两者看似相近, 其实本质上两个不同的概念。前者......,后者......(指出A与 ...
  • 缺陷报告书写注意

    2020-12-01 23:49:49
    有价值的缺陷是指和业务相关性比较的缺陷。输入的合法性检查产生的bug一般就不是有价值的缺陷。 4.缺陷报告的格式:缺陷ID、缺陷标题、测试环境、重现步骤(包含预期结果和实际结果)、附图/附件、提交人、提交...
  • 菜鸟编程之初始三层

    2013-04-30 10:58:00
    换句话说,所谓高内聚是指一个软件模块是由相关性的代码组成,只负责一项任务,也就是常说的单一职责原则。 耦合,也就是块间联系,指软件结构中各模块间互连紧密程度的一种度量。模块之间联系越紧密,其耦合...
  • 过拟合是指模型对于训练数据拟合呈过当的情况,反映到评估指标上,就是模型在训练集上表现很好,但在测试集和新数据上表现较差。 过拟合: 1. 训练数量小 2. 模型复杂度太高 3. 模型层地太深 4. 特征太多 5. 参数值...
  • 什么是面向对象编程 面向对象的英文全称:Object Oriented Programming , 简称OOP ...高内聚: 一个软件模块相关性的代码组成,只负责一项任务,也就是常说的单一责任原则。 低耦合: 让每个模块尽可能的
  • 2019数据运营思维导图

    2019-03-29 21:34:09
    4、用户留存 新用户留存 次日、3日、7日、14日、30日留存 次日留存对玩家“第一游戏体验”的最佳印证 与游戏的类型、题材、玩法、美术风格、游戏前期内容吸引度、新手引导有效性有直接的相关性 如果导入的新增玩家...
  • 数据运营思维导图

    2018-04-26 14:24:22
    是什么,有什么用,怎么做 构建用户画像的核心工作即给用户贴“标签”,而标签通过对用户信息分析而来的高度精炼的特征标识 作用 精准营销 分析产品潜在用户,针对特定群体利用短信、邮件等方式进行营销 ...
  • Sam R.Alapati世界顶尖的Oracle技术专家,一位经验丰富的数据库管理员,有20多年从业经历。他拥有Oracle OCP DBA证书和HP UNIX System Administrator证书,曾经担任Oracle公司的高级顾问,并在AT&T、雷曼兄弟、...

空空如也

空空如也

1 2
收藏数 24
精华内容 9
关键字:

强相关性是指什么