精华内容
下载资源
问答
  • 这是公司研发团队发现的一个关于...归根揭底还是对开发框架技术应用的把握上存在纰漏,但个人觉得在分析问题->找出原因->确认解决方案这一思路和策略上本文能起到一定借鉴作用,所以稍微梳理了一下拿出来大家分享。

    这是公司研发团队发现的一个关于数据库索引失效方面的问题,我们的工程师对该问题进行了分析和解决并写了这份小结。归根揭底还是对开发框架和技术应用的把握上存在纰漏,但个人觉得在分析问题->找出原因->确认解决方案这一思路和策略上本文能起到一定借鉴作用,所以稍微梳理了一下拿出来和大家分享。

    问题的现状是测试人员反馈某一个功能操作耗时很长(需要20秒以上),而开发人员核对代码发现无论从业务逻辑上还是代码实现上都没有问题,涉及到的数据查询等功能在数据库中也创建了合适的索引以确保查询效率,于是我们的工程师就去研究了,过程如下:

    1.      首先应用内嵌入了一个系统监控平台JavaMelody(此为google出品的一个开源神器 https://code.google.com/p/javamelody/

    2.      通过该神器观测到该操作的方法执行帧信息,发现其中耗时最多的一步:


    3.      下钻至此方法内部,看到其调用的sql为:


    4.      对该sql进行分析,将其摘入PLSQL Developer工具内,并对变量赋值进行验证执行,反复验证多次发现每次速度都还不到1秒:


    5.      就此产生疑惑:为何在服务器上执行需要20多秒,而在客户端工具内却飞快呢?猜测跟JDBC有关。为了证实这个想法,做了单元测试,果不其然,在单元测试中同样需要20多秒,为毛通过JDBC查询就这么慢呢?


    6.      前思后想,在JDBC中和在客户端中查询最大的区别就在于前者使用了绑定变量,而后者是一个静态的sql。为了进一步验证,把单元测试中的sql变成了静态的(非变量绑定形式),发现快多了,和在第4步PLSQL Developer客户端工具中执行一样快,委屈了JDBC:

    原来问题在于变量绑定

    问题找到了,那就要分析导致这种结果的原因。简单说来,我们的故事是这样的:

    MapSqlParameterSource parameters = new MapSqlParameterSource();
    parameters.addValue("queryTimeFrom", queryTimeFrom );
    parameters.addValue("queryTimeTo", queryTimeTo);
    
    其中queryTimeFromqueryTimeTo是方法传进来的参数,类型为java.util.Date。
    执行查询调用的是:

    List<DrugOrderAdmin> result = getJdbcTemplate().query(sql.toString(), parameters, new DrugOrderAdminMapper());
    本以为传进sql里的参数是Date类型,但其实经过了spring框架内部代码那么一折腾,最后变成了Timestamp类型:


    其中 isDateValue方法的定义为:


    再到oracle中,原本sql中的 AND PLAN_TIME >=? AND PLAN_TIME <= ?  这个条件,由于传入的参数是Timestamp类型,导致oracle解释器把sql解释为:

    AND TO_TIMESTAMP(PLAN_TIME) >= ? AND TO_TIMESTAMP(PLAN_TIME) <= ?

    这样一来,PLAN_TIME字段上的索引就被忽略,走了全表扫描(除非另外建一个函数索引TO_TIMESTAMP(PLAN_TIME)),导致最终查询速度产生了如此巨大的差别。

    原因找到了,解决方案也就很明确了,即在绑定变量时强制指定JDBC类型为DATE:

    parameters.addValue("queryTimeFrom", queryTimeFrom);改成:
    parameters.addValue("queryTimeFrom", queryTimeFrom , Types.DATE);
    parameters.addValue("queryTimeTo", queryTimeTo); 改成:
    parameters.addValue("queryTimeTo", queryTimeTo, Types.DATE);
    
    再回到PLSQL Developer中,模拟一下传入参数为Timestamp类型的情况,这次采用绑定变量的方式,即在所有需要传入参数的地方预留一个变量(以&开头命名),在执行时客户端会自动弹出变量输入对话框:



    这次可以看到,以绑定变量方式执行查询,并且绑定变量为Timestamp类型时,PLSQL Developer同样需要很久,之前的疑惑不释而解:


    总结:在使用绑定变量进行sql查询时,一定要注意传入参数的类型和column类型一致,能够明确指定参数类型的情况下尽量明确指定,否则类型不当会导致列的索引失效。

    展开全文
  • 产品思路和产品策略的分享

    千次阅读 2010-03-12 13:51:00
    产品思路和产品策略的分享 一直很想写点产品策略的东西和大家分享,想说说一个能控制一个产品命运的产品经理,应该如何去做产品策略和版本规划,如何为一个产品找到市场定位,然后将一个远大的目标如何分解为每天...

    产品思路和产品策略的分享

     

        一直很想写点产品策略的东西和大家分享,想说说一个能控制一个产品命运的产品经理,应该如何去做产品策略和版本规划,如何为一个产品找到市场定位,然后将一个远大的目标如何分解为每天可以执行的工作去实现它。一个产品经理应该如何在瞬息变化、交错横流的行业中坚定不移的奔着自己的目标去,如何能衡量这个目标的正确与否。一个产品经理在项目内如果增强个人影响力,如何控制项目的进度和争取更多的话语权和决定权。……

       其实,做一个好产品难,做一个好的产品经理更难。你会发现,很多时候,光你自己一个人知道,其实没有用,有很多的产品策略需要push给更多的人,比如项目经理、技术总监、开发团队、运营团队、领导等等,要得到他们的理解和支持后,才有可能去将产品抱负实现。

       什么叫产品策略:为确保产品市场目标,而制定的产品实现的行动计划,涉及到产品的核心竞争力、组合营销计划、生命周期、版本计划等等。

       年度性的产品规划,因为我们是结合部门年会一起搞的,所以经常都是将年度总结和来年规划一起做了,所以这样的会上,一般我都会将产品的整体策略跟大家分享,这只是一个大方向。但是,阶段性的分解目标和产品细分策略,其实是完全没有提及到的,也没有办法在半个小时内跟大家说清楚,所以一般都是省略掉。可是,后续,我发现大家开始拎着这个大策略去扑所有的产品线的时候,一堆堆的问题迎面而来,情况各位参与项目的人就都清楚了,我就不多说了。但是为什么呢?为什么有了产品策略还是解决不了问题呢?我举个例子,我们的产品目标已经明确后,产品大策略是向东走100步,可实际操作执行的时候,需要先往西走10步,然后再往东走110步。因为西边10步的地方放了一辆哈雷摩托,是走路速度的10倍,另外地上还有一根竹竿。竹竿是干嘛的?项目本身在规划的时候,我们就应该凭经验知道前进的路上可能存在风险,我们需要带点工具上路。摩托走了一半,发现路没有了,需要撑杆跳过去,好了,刚才捡的竹竿发挥作用了。那怎么知道会没有路?怎么知道西方有摩托?是的,产品经理早在项目开始前就已经就地方圆几公里溜达了好几圈了,已经深刻分析过行业环境和核心竞争力。做产品经理的人在行业知识的积累、风险的预计和控制能力、信息的分享和获取渠道上,都必须有自己的优势和经验,这样做一个经验丰富的产品经理,才能成为一个产品和项目团队合格的领航员。

       是的,不是任何一个角色都可以去对产品策略指手划脚的,那样只会造成项目目标的盲目和混乱。决策的统一和循序渐进的思路,是保证一款产品可持续发展的基本动力。

       那产品策略是怎么做出来的呢?很多方面。我承认每年的产品ppt是要讲的当天凌晨3-4个小时赶出来的,没有修改的时间,也没有修改的必要。但是之前,我从6月份就开始准备年度产品汇报ppt了,从思想上准备,一份需要写3、4个小时的ppt,我会花半年的时间来构思,在脑海中写上百遍。然后提前2个月开始收集图片和数据资料,然后一次性通宵完成写作。那这个半年我想啥了?积累产品思路,将行业发展趋势、业内创新价值和我们自己的核心竞争力做全面的排序和整合,提炼2年的发展目标,并细化1年的产品思路,最终形成了产品发展的年度策略。而年度策略其实是可以被分解的,也是必须被分解的,最终分解到每个不同的平台、不同的版本、不同的功能预期上,都是有各自的细节策略要提炼和分阶段执行的,这是不能一概而论的。

       举例子,国产手机的目标就是上量,那么策略很简单,就是走低成本的版本统一覆盖的方式,一个版本覆盖越多的机型就越好,数量第一,体验第二;symbian的目标就是引领产品新功能上线,以体验第一,那么策略就是新技术预研先行,版本周期保值保量;andorid平台目标是填补平台空缺,那策略就是用成熟版本移植,聊天功能齐全即可上线……等等诸如此类。

       产品策略也不是一层不变的,阶段性的发现问题并及时调整,但是记住,产品经理需要的能力素质是多方面的,还有一点非常重要的就是能够在外界压力的情况下,综合分析,如果最终结论自己的决策是正确的时候,必须要能坚持不轻易动摇。要知道,能作出好产品的产品经理,其实并不多,也就是说真正的道理其实不是每个人都懂,也不是每个人都看得透。

      我非常相信,曾经有一高人说过的话,做产品经理到了一定的层次,那是只剩下一个字:悟。靠的是天赋。

    展开全文
  • 摘要: 去年曾遇到过类似的百度爬虫攻击,积累了点经验,文中的方法也很不错... 下面我说说一些反恶意spider和spam的策略和思路。1. 通过日志分析来识别恶意爬虫/攻击 less guang.com_access.log | awk -F- ‘{print $1

    摘要: 去年曾遇到过类似的百度爬虫攻击,积累了点经验,文中的方法也很不错,值得借鉴

    前段时间Guang.com经常受到恶意spider攻击,疯狂抓取网站内容,一系列机器人spam发广告,对网站性能有较大影响。
    
        下面我说说一些反恶意spider和spam的策略和思路。
    
    1. 通过日志分析来识别恶意爬虫/攻击
    

    less guang.com_access.log | awk -F- ‘{print $1}’ | sort | uniq -c | sort -rn | head -n 50

    首先分析access log,类聚统计出访问量前50 IP
    
     排除白名单IP 和正常spider(baidu,google...)
    

    host 112.94.32.135 //查看可疑ip是不是baidu、google等常规爬虫。

     分析可以ip 请求时间、频率、路径等,你可以很容易发现这是否是一个spider,下面那明显是一个spider。
    
    less access.log | grep '112.94.32.135' | less
    
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /baobei/1888476 HTTP/1.1" 200 107876 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /baobei/1922742 HTTP/1.1" 200 110053 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /u/1437104 HTTP/1.1" 200 10751 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /baobei/1733527 HTTP/1.1" 200 98099 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /u/1437105 HTTP/1.1" 200 10891 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /baobei/1646377 HTTP/1.1" 200 95527 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:50 +0800] "GET /u/1437106 HTTP/1.1" 200 10681 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:51 +0800] "GET /baobei/1922741 HTTP/1.1" 200 98356 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:51 +0800] "GET /baobei/1733526 HTTP/1.1" 200 97690 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:51 +0800] "GET /u/1437107 HTTP/1.1" 200 10765 "-" "Mozilla/4.0"
    112.94.32.135 - - [1/Oct/2012:00:00:51 +0800] "GET /baobei/1888475 HTTP/1.1" 200 96415 "-" "Mozilla/4.0"
    
     既然发现spider,当然要动用iptables来封杀这IP, 但很多时候仅仅封一个IP是不够的,因为一般爬虫都是运行在托管机房里面(多台服务器轮换)或者家里ADSL(重新拨号换IP),所以封整个C网段会直接有效得多,当然这样做有可能影响极小数正常用户访问,所以建议一段时间后重新解封这c网段。
    

    iptables -A INPUT -i eth0 -j DROP -p tcp –dport 80 -s 112.94.32.0/24

        以上可以写成个shell/python脚本,每天执行一次。
    
    2. 实时反爬虫
    
        通过日志分析来识别恶意爬虫/攻击,无法即时屏蔽这些spider,对网站影响还是在的。再说,假如有人采用分布式的spider(几百个代理服务器一起过 来爬),网站很有可能无法访问,分析日志也不能及时解决问题。必须采取实时反爬虫策略,实时识别和封锁恶意爬虫的访问。
    
    实现思路:用redis来记录每个IP的访问频度,在单位时间之内,如果访问频率超过一个阀值,就认为这个IP很有可疑,然后就可以返回一个验证码页面,要求用户填写验证码。如果是爬虫的话,当然不可能填写验证码,如果该IP地址短时间内继续不停的请求,则判断为爬虫,加入黑名单。
    
    当然判断这IP是否可疑,单单从访问频率来判断是不够的,还需要增加以下策略:
    
     分析referer。一般爬虫的referer 都是为空或者一个固定值。
    
    分析访问时间间隔。一般爬虫爬取网页的频率都是比较固定的,不像人去访问网页,间隔时间比较无规则。
    
     排除白名单IP地址段。
    

    具体redis操作:

         //score 为timestamp, value 为{referer}{request_url}{sessionId} redis> ZADD log:ip:112.94.32.135 61307510400000 "{referer}{request_url}{sessionId}" (integer) 1 //保留1个小时内log会比较合理。 redis> ZREMRANGEBYSCORE log:ip:112.94.32.135 -inf {timestamp} (integer) 1 redis> ZRANGE log:ip:112.94.32.135 0 -1
    
    更多Redis 的应用场景,请看Redis 在电商中的实际应用场景
    

    后记

        有同学说,还可以根据User-Agent来屏蔽spider,但我认为这没什么意义,现在的恶意spider都已经将User-Agent伪装成普通浏览器或者正规爬虫的User-Agent了,我也不再这里提了。
    
    我认为,结合以上2种策略,可以很大程度打击那些恶意spider的攻击,保证网站正常运行。
    

    原文地址:http://kenny7.com/2012/10/anti-spider-and-attack.html

    展开全文
  • 一、规则权值定义 1、斗地主中存在很多种的牌型,比如:单张,对子,三带,顺子,连队,飞机,炸弹等 ,我的机器人主要根据权重去设计的,我给每一种牌型都制定了一个权重,比如3权重是多少,其他牌型的权重有时...

    一、规则和权值定义
    1、斗地主中存在很多种的牌型,比如:单张,对子,三带,顺子,连队,飞机,炸弹等 ,我的机器人主要根据权重去设计的,我给每一种牌型都制定了一个权重,比如3权重是多少,其他牌型的权重有时多少,定义了一个结构体如下:

    type CardGroup struct{
        cgType PattenType   //枚举类型
        value int           //牌的价值
        count int           //牌的个数
        maxCard int         //最大的牌
    }
    

    根据牌型去获得对应的权值

    func GetCardGroup(cgType PatternType, major int, c int*CardGroup{
          switch cgType{
             case Single :
             value=major-10
          }
          return &CardGroup(cgType ,value,c,major)
    }
    

    2、牌的大小
    大小:3、4、5、6、7、8、9、10、J、Q、K、A、2、小王、大王
    二、实现方面
    1、机器人的逻辑先是叫地主,抢地主,根据手上的牌来计算出最优的牌型组合且权重得到最优,然后在选择叫地主和抢地主。
    2、叫玩地主之后,选择加倍或者不加倍,这个时候底牌已经出来,然后机器人再重新计算出对应的权值来选择加倍或者不加倍。
    3、加倍完成之后,则进入机器人出牌和跟牌的逻辑 ,这面的逻辑主要是包含一些策略,比如:一手牌牌策略,挡牌策略,让队友策略已经打出一手牌让自己手牌价值最大的策略等等。
    注释:在计算权值的时候,会对手牌进行一个拆牌算法,将玩家手牌拆分成不同的组合,然后从拆分的组合中去得到最优的牌值拆分。这里面涉及到的算法是动态规划+递归+回溯(ps:在这里就不多描述了)代码贴一丢丢如下:

    type ValueCalculatorR struct {
    	valueTbl map[string]*HandCardValue
    }
    
    func NewValueCalculatorR() *ValueCalculatorR {
    	calc := &ValueCalculatorR{
    		valueTbl: make(map[string]*HandCardValue),
    	}
    
    	return calc
    }
    
    // 手牌权值结构
    type HandCardValue struct {
    	sumValue   int         // 手牌总价值
    	needRound  int         // 需要打几手牌
    	cardGroups []CardGroup // 记录拆牌结果
    	cardArrays []CardArray // 记录拆牌结果
    }
    

    计算出的主要是包含结构体中这些参数。下面来说一下我做这个机器人的一些策略,希望对大家有所帮助:
    出牌策略:优先的话,

    1. 是一手牌策略,当自己手上只有一手牌的情况下,则直接打出去,eg:333,444,77,88,可以直接当飞机打出去。
    2. 当对手只有一张牌或者两张牌的情况下,则结合场面上的信息去进行分析,比如你的对手有两张牌,但是你的手里只有对子和一张目前场上最大的单张,则你应该选择拆对子去打牌。这样才能保证你赢。
    3. 让队友牌策略,当下家是队友的话,,比如队友只有一张或者两张的时候,打出自己手上较小的单张或者对子放队友走掉。
    4. 小顺子,飞机,三带牌型则优先打出去,以及在某些情况下可以打出四带二的牌型。
    5. 打出一手牌,让当前玩家的手牌的权值达到最大值。
      跟牌策略

    1、优先也是一手牌策略,当你手上只有一手牌的话,要的起的话,则跟出去。
    2、分析对手的牌,当对手牌的数量只剩下一张或者两张的时候,这个情况下如何去选择跟牌。
    3、跟牌必赢策略,当自己手上的权重较大的时候,在存在要的起的情况下,则会选择去跟牌。
    4、让队友跟牌策略,当自己手牌需要拆牌,或者打出当前牌则牌权值较差的情况下,则会优先考虑让队友去跟牌。
    5、两手牌策略,分析自己手上的牌型,根据场面上的信息,选择跟牌还是不跟,绝大部分要的起的话,是会跟牌,除一些特殊情况。
    6、最后的兜底策略,分析各种情况,当压友军需要拆牌的情况下则不拆,当打出的是炸弹,但是队手的牌的权值太小的情况下,则不不打出炸弹,这个策略至关重要,直接影响到胜率。

    以上的策略是从上往下,优先级从大到小。本人还写过五子棋机器人,斗地主炸弹机器人,组队2v2机器人。其实策略逻辑方面都差不多,只是需要考虑的场景不太一样,现在正在对机器人做进一步的优化。希望以后能越来越智能。现在机器人胜率普遍达到40-50%之间。

    展开全文
  • ftp乱码的问题的解决思路策略

    千次阅读 2010-01-15 11:29:00
    我想做开发的,特别是对于那些做协议开发的、而且产品慢慢...现在将解决这个问题的思路理一理。 刚开始的时候碰到乱码问题不知道是什么编码,通过跟踪代码发现在客户端的编码方式是gb2312的,而我们搭设的ftp服务器(s
  • 使用DBLINK远程访问数据库的优化策略和思路: 策略:远程访问,网络传输占很大部分,优化原则,减少网络传输,将小的结果集拉到本地处理; 思路1:在远端建立视图; 思路2:使用DRIVING_SITE将数据拉到本地处理; ...
  • Android生存指南:解Bug策略和思路

    千次阅读 2012-05-17 23:00:04
    现在维护定制Android的需求越来越多,做的人也越来越多,而Google直接Release出来的源码中又有很多Bug不合理的地方,特别是原生的应用,如Mms,Browser, Email, Contacts等。定制或做Android解决方案第一步就是...
  • 是将人的投资思想规则化、变量化、模型化,形成一整套完整、可量化的操作思路,并且这个思路可以用历史数据进行分析验证。程序化交易并非量化策略必备,但是程序化交易可以让策略执行中更少受人的要素影响。 在...
  • 「文献」杂合基因组的策略思路

    千次阅读 2019-10-16 18:50:19
    「文献」杂合基因组的策略思路 文献出处: Sequencing a Juglans regia × J. microcarpa hybrid yields high-quality genome assemblies of parental specie 文章的亮点在于通过对一个F1子代进行三代测序,之后利用...
  • 2021 中青杯 B题 赛题思路 思路提供 2021 中青杯 赛题思路分享群: 学长提高赛题思路,需要的同学入群,赛题思路能帮你节省大量时间,领先他人一大步 [题目内容] (先占个位置,题目出来后第一时间更新) [问题] (先...
  • 随着社会之间的联系越来越紧密,它们面临的一系列...研究人员已经报告了组建团队的最佳策略、团队成员之间的最佳互动以及理想的领导风格。跨部门领域的强大团队能够执行复杂的任务,无论是通过个人努力还是通过...
  • 2021年中青杯B题 港珠澳大桥桥梁设计与安全策略思路 背景:已知大桥全程55公里,需要建设两座面积各十万平米的人工岛一条6.7公里的海底沉管隧道,实现桥梁与隧道的转换。 问题一:考虑各地的习惯传统(港澳开车...
  • 一直想实现多品种策略订阅多合约tick推送到单一策略中,效果如下图。 首先理清vnpy1.7.1版本行情数据流,如何从底层ctp接口传入的。大致是这样的:1、ctaEngine(H:\vnpy-1.7.1\vnpy\trader\app\ctaStrategy\...
  • 数据库Sharding的基本思想切分策略

    万次阅读 多人点赞 2011-01-24 16:32:00
    本文着重介绍sharding的基本思想和理论上的切分策略,关于更加细致的实施策略和参考事例请参考我的另一篇博文:数据库分库分表(sharding)系列(一) 拆分实施策略和示例演示一、基本思想 Sharding的基本思想就要把一个...
  • 策略(GAN+CNN): 1、提取含噪图像集中的噪声块,训练 GAN 网络以得到一个噪声生成器V 2、在干净图像数据集 X 中随机选取图像块 x ,加入 GAN 生成的噪声 v ,得到含噪图像 y 3、按照 {y,x} 训...
  • 路由策略和策略路由配置与管理-1

    万次阅读 多人点赞 2017-02-24 12:43:14
    路由策略和策略路由配置与管理 “路由策略”与“策略路由”之间的区别就在于它们的主体(或者说“作用对象”)不同,前者的主体是“路由”,是对符合条件的路由(主要)通过修改路由属性来执行相应的策略动作(如...
  • 路由策略和策略路由配置与管理-2

    万次阅读 2017-03-05 20:18:34
    “路由策略”主要用来实现路由表中的路由过滤路由属性设置等功能。它通过改变路由属性(包括可达性)来改变网络流量所经过的路径。而“策略路由”中的“策略”是名词,“路由”却变成了动词,是
  • 机制和策略分离

    千次阅读 2014-12-01 11:28:43
    一直觉得自己写的代码比较混乱,思路比较不清晰,后来发现我经常把实现机制逻辑写在一起,由于逻辑或者策略变化总比机制要快,所以很难再拓展。“表驱动”(大概是:把已经定义好的功能(机制)放进表中,实际策略...
  • 2021中青杯数学建模B题:港珠澳大桥桥梁设计与安全策略 全部详细思路,文字可复制 问题一 我们先讨论双向车道的种类有哪些,讨论的越全面拿奖的概率句越大; 双向车道弯道曲线一般都包含直线、缓和曲线、圆曲线...
  • 本文着重介绍sharding切分策略,如果你对数据库sharding缺少基本的了解,请参考我另一篇从基础理论全面介绍sharding的文章:数据库Sharding的基本思想切分策略 第一部分:实施策略图1.数据库分库分表(sharding)...
  • 量化交易之Dual Thrust策略

    千次阅读 2021-01-05 09:53:58
    Dual Thrust系统策略十分简单,思路简明,但正所谓大道至简,该策略适用于股票、期货、外汇等多类型市场,如果配合上良好的资金管理和策略择时,可以为投资者带来长期稳定的收益。 Dual Thrust是典型的区间突破型...
  • 进化策略

    千次阅读 2018-01-23 19:13:57
    进化策略和遗传算法统称为进化算法,二者的思想很类似,但步骤和应用方向有所差别。 对遗传算法感兴趣的可以参考博客:遗传算法讲解 这篇文章主要讲解进化策略,从以下三个方面入手: 进化策略的思想 进化策略与...
  • 阿尔法策略与贝塔策略

    千次阅读 2020-05-11 14:50:15
    主动型策略、主动收益(阿尔法收益)、精选高品质个股、争取实现超越大盘收益、适合激进投资者、对选股择时能力要求极高、大盘在牛市中表现强势、大盘在熊市中回落幅度比贝塔策略更大、牛市有优势、 贝塔策略: ...
  • 2020年数学建模国赛C题题目解题思路

    万次阅读 多人点赞 2020-09-10 18:58:06
    银行首先根据中小微企业的实力、信誉对其信贷风险做出评估,然后依据信贷风险等因素来确定是否放贷及贷款额度、利率期限等信贷策略。 某银行对确定要放贷企业的贷款额度为10100万元;年利率为4%15%;贷款期限为1年...
  • VNPY - CTA策略模块策略开发

    千次阅读 2018-08-06 19:01:04
    策略模板是具体交易策略的基础,一般把大部分策略都用到的方法公共变量放到策略模板里,而具体策略继承该策略模板,进而增加个性方法变量(如:入场价格、止损止盈)。一般我个人喜欢在最基础模板上,按照交易...
  • 测试点设计及编写思路

    千次阅读 多人点赞 2019-04-19 18:30:02
    编写测试用例的策略:先点后面,先局部再整体,最忌讳的是点和面混在一起,局部整体不明。 在测试点设计的时候,需要思考如下几点: 1、测试操作的难度; 测试操作包括环境、配置、执行等因素,在测试设计...
  • 量化投资策略——海龟策略

    万次阅读 多人点赞 2018-11-22 19:20:31
    几乎所有的宽客(Quant)都听说过海龟交易策略,该策略以海龟交易法则为核心。海龟交易法则,起源于八十年代的美国,是一套简单有效的交易法则。这个法则以及使用这个法则的人的故事被写成了一本书——《海龟交易法则...
  • 泛指系统没有宕机,但是业务处理性能差,服务响应低效。通常原因也好理解: 内部程序设计问题:例如数据库查询慢...处理思路:保证核心业务绝大部分用户。 方法策略有: 降级:监控发现资源不足时,对非核心业...
  • 状态模式和策略模式比较

    千次阅读 热门讨论 2015-04-30 16:37:38
    说到策略模式,我们最先想到的就是商店的收银方式:不满100,正常收费;超过100不满300,超过的部分打八折;超过300,全价九折!  解决这个问题最最普通的方法就是大量的If…Else…,而它带来的就是无情的难以维护...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 225,584
精华内容 90,233
关键字:

思路和策略