12月 05

知识就是财富,科学技术是第一生产力

世间有个传言,知识就是财富。邓老大说,科学技术是第一生产力。这口号喊多了,就成了虚的东西。再加上现在读书无用论,知识就是财富这种说出去自己都觉得可笑。每次我给老妈说这些,她都很不屑,今天非得好好写写让她明白不可。

知识就是财富,这财富就指狭义的财富,没错,就是钱。知识,这里讨论的,特指概率论~有人说《概率论》这书,谁没学过,我高中就知道怎么算概率了。但是概率论和钱有什么关系?嘿嘿,建议去看看《宽客》,里面写到最早的宽客,没错,就是信息论的祖师爷香农,如何在21点上赢遍各大赌场。

中国没有赌场,中国最大的赌场就是股市,所以“知识就是财富”落地为“概率论指导股市赚钱”。

 
 
以前我特别讨厌股市,一说起来就排斥,为何?因为整个股市氛围就一个low字,充满了各种骗子和神经兮兮的人,我讨厌被收智商税。直到有一天,我舍友神秘兮兮的带我去人大听了一门课,咱才发现九阳真经是真的存在的,而且大道理都很简单。万分感谢我的同学和他的mba导师,无价之宝就这么白送我了~ 九阳真经专教我这样的小白(不懂任何经济知识)炒股票赚钱~
 
翻开秘籍,里面只有一句话“大数定理是万物真理”,其他页面都是空白~~整个概率论一开始其实是么有理论支撑的,直到十七十八世纪大数定理确立了概率论是一门有理论严格证明和支撑的科学!用网红大牛rickjin的话说这就是皇冠上最耀眼的明珠。百度告诉我们,大数定理说的是当一个随机事件大量重复,就会发现这些事件的统计结果无限逼近与它的概率。
 
至高的武功秘籍都只有那么一句话,至于练到什么程度,就靠每个人自己了。举个最牛的人的例子。《宽客》里面提到了一个人,这个人本来我有机会远远看上他一眼,可惜啊……2014年ACL盛会在巴尔地摩,迎来了史上最有钱的终生成就奖获得者,IBM model的发明者之一西蒙斯。他的另一个身份是大奖章基金的老板。据说他来领奖的时候,整个领奖台上人头攒动,全是他的保镖。只可惜我当时觉得闭幕大会没意思,在房间里睡大觉,竟然错过了目击超级大牛的机会。要说宽客,人家这才叫宽客,每次听到中国有人说他是搞量化投资的,尤其是在A股上,我心中就偷偷的发笑。也许是我不懂金融比较无知吧~但是有些常识还是突破不了的。就比如西蒙斯的基金会招顶级数学家,招顶级物理学家,就是没有一个经济学家~因为人家玩的东西根本与经济没有关系。
 
现在开始说说偶对九阳真经的粗浅理解。
 
一、 玩股票短线,超短线的人一定会死
下面来建立一个简单的模型。假如你是一个超级短线高手,找到了一种概率为99%能赚钱的方法,但是我们知道,市场是有黑天鹅的,很可惜这种方法有一个缺点,就是有1%的概率你会破产。当然,你的炒股方法还得限制一下,每次你都是全仓进入,毫不保留,赚一点就走。别说这个模型很极端,其实它非常好的模拟了现实,如果你不能认同这个模型的真实性,那其实后面的内容也不必看了。15年随便哪次股灾都够这样的人破产,全仓跌停板看你怎么出。任何炒短线的人其实都在践行这个模型,只不过打多少折扣的问题~
 
结论就是按这样一个模型操作的人,必然会死。利弗莫尔就是你的祖师爷。为何,这个模型其实我们高中就学过了,一个只有1%概率的随机事件,求他在第n次重复时还没有发生的概率。多么简单,不就是(1-p)^(n-1)。我想说,0.99^10=0.9,0.99^100=0.37,0.999^1000=0.000043,呵呵,每天玩一次,就算一年交易日不到200天,不出5年,你就死了。所以只要玩得次数足够多,大数定理一定会生效。
 
二、在大数定理下,炒股票只能有两种玩法
 
炒股票指的是炒,通过炒赚钱,只有两种极端能玩得转。
 
第一种玩法,让大数定理失效。假如你仍旧掌握了一种概率为99%的能赚钱的方法,1%的概率你会破产。上面说了,只要玩得多,你肯定死。那就简单了,玩少点呗。你一辈子就玩几次,看你死不死。这时候大数定律就失效了,因为这个概率需要很多次重复才能发生。恭喜你,这时候你就是巴菲特。不过巴菲特99%的成功率这种难度相比不用多说,我们小白还是敬而远之。
 
第二种玩法,让大数定理发挥到极致。这时候,你需要降低预期,你得找到一种51%概率能赚钱的方法,但是有49%的概率你会小亏。这个方法和第一种完全相反,如果只玩几次,根本不能保证你赚钱,所以最好能玩无限多次。这样,根据大数定律,你一定会赚钱。恭喜你,这时候你就是西蒙斯,宽客!这样玩得转的还需要以下条件:
1. 绝对是超短线。不看宽客,国人对A股超短线的理解极其可笑,以为就是今天买进明天卖出。呵呵,T+1黄花菜都凉了。哪天晚上刘士余老大说要治理妖精,看你周一大亏不?还想49%的概率只做到小亏?大亏一次够抵消你赚一千次的。人家的超短线到多少?几分钟?几秒钟?虽然只是猜的,但是我想就是西蒙斯也不敢做间隔24小时的量化模型吧,变数太多。
2. 高频。高频,可能一小时就交易好多次,这样才足够让大数定律生效。变着法子日内T+0你能做到高频吗?
3. 模型。西蒙斯是谁,世界最顶级的数学家,别的不说,ACL终生成就奖。那些连贝叶斯公式都写不出来的人就想做高频量化?举个最简单的例子,上面一直在说概率,其实这是一个陷阱。机器学习,人工智能,最关键的东东之一就是找到目标函数。上面的文章里面一直隐含着最大化概率为目标这种意思,这显然是错误的。赚的概率大了,但是每次只能赚一点点,亏的概率小了,但是每次都大亏,这样的model能赚钱?所以做量化至少要以期望为目标函数吧。
 
呵呵哒,记得有一次去阿里面试,面试官跟我谈起时间序列量化交易模型,我一愣一愣的,真是傻叉。所以讲到这里,心都凉了,都是大牛玩的。小白何以修炼九阳真经?
 
三、九阳真经
 
九阳真经太简单了。都不用炒股票。
 
不要炒股票,因为炒股票只能走两个极端,我们小白玩不转。现在人家都不流行炒股票了,都是什么对冲啥的,用经济学找漏洞的。不学经济的小白仍旧玩不转。到最后你还是逃不出大数定律,给你来个黑天鹅!
 
还是感谢刘老大,现在发那么多新股,所以当下这就是小白练个九阳真经赚钱的最好机会。
 
无知者说,新股中签概率那么低,还不如买彩票呢。所以无知者穷。
 
概率低,抵不上他发的多啊。只要次数一多,你玩的多了,大数定律就会生效。这个都不需要推导,根据前面说的,想想都知道了。求第n次打新,一直不中的概率,呵呵。
 
雪球有些大牛都给分析了,30万门票,预期打新期望收益,14%。
 
你家自己放高利贷能14%?
 
你有60万? 那你让你老妈也开个户头,分成两个账户呗。
 
什么,你有3000万,需要100个账户?一边呆着去,你有三千万还跟我扯皮干嘛。
 
不过九阳真经仍旧有一些限制:
1. 新股发行得维持现状
2. 得有不亏的门票(好办)
 
行了,说了那么多,有本书叫 《大数投资》
 
看完本文,请叫我雷锋。
7月 19

solr 自定义 collector 尝试

这是 IndexSearcher.search 的代码

  protected void search(List<LeafReaderContext> leaves, Weight weight, Collector collector)
      throws IOException {

    // TODO: should we make this
    // threaded…?  the Collector could be sync'd?
    // always use single thread:
    for (LeafReaderContext ctx : leaves) { // search each subreader
      final LeafCollector leafCollector;
      try {
        leafCollector = collector.getLeafCollector(ctx);
      } catch (CollectionTerminatedException e) {
        // there is no doc of interest in this reader context
        // continue with the following leaf
        continue;
      }
      BulkScorer scorer = weight.bulkScorer(ctx);
      if (scorer != null) {
        try {
          scorer.score(leafCollector, ctx.reader().getLiveDocs());
        } catch (CollectionTerminatedException e) {
          // collection was terminated prematurely
          // continue with the following leaf
        }
      }
    }
  }
  
  经过尝试,发现载入 DocValues 的代码是这句 BulkScorer scorer = weight.bulkScorer(ctx);
  
  则说明其实每一个 LeafReaderContext ctx 只需要载入一次 DocValues 就行
  
  之前我直接修改了 TFIDFSimilarity ,每个文档打分都要载入 DocValues,严重降低了效率

在这里可以重写一个 TopScoreDocCollector,在调用 leafCollector = collector.getLeafCollector(ctx); 这句话的时候,把所有需要的 DocValues 先一次性载入,就行

4月 03

Solr 问题记录

 1.加载 HttpSolrServer 出现log错误,主要是maven里面没有添加log项,加入如下解决问题

    <dependency>
        <groupId>org.slf4j</groupId>
        <artifactId>slf4j-simple</artifactId>
        <version>1.7.7</version>
    </dependency>
    
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.2</version>
    </dependency>

 

2.加载中文分词

首先 SOLR_HOME/lib 下面可以放需要让solr服务器加载的包,但是由于配置里面没有指定,默认是不会去加载lib的。需要在solrconfig.xml上加一句,<lib dir="E:/XXX/server/lib" regex=".*\.jar" />

这样solr就会去加载lib下面的jar文件。

    <fieldType name="text_chinese" class="solr.TextField" positionIncrementGap="100" autoGeneratePhraseQueries="true">
      <analyzer>
                <tokenizer class="solr.SmartChineseSentenceTokenizerFactory"/>
                <filter class="solr.SmartChineseWordTokenFilterFactory"/>
      </analyzer>
    </fieldType>

SmartChineseSentenceTokenizerFactory 在 solr-analysis-extras-5.0.0.jar 里面,所有要把包 solr-analysis-extras-5.0.0.jar 拷贝到 lib 目录中

这个问题比较繁琐,现在的解决方式是:

1. 把 configsets 里面的 basic_configs 拷贝到要建立的 core 目录下面

2. 去网页界面里新建 core

3. 修改 solrconfig.xml 中的lib,以及 schema

4. 把下面的jar拷贝到 lib 里面,lucene-analyzers-smartcn-5.0.0.jar,solr-analysis-extras-5.0.0.jar,solr-analytics-5.0.0.jar,solr-core-5.0.0.jar

10月 01

成功来源于克服本性

好久没写博客,今天跟人讨论问题,想到了一个很好的点。

恐惧、贪婪、鄙视、骄傲……皆为人之本性,很少有人生来没有这些本性,但是又有多少人能克服这些本性?

从证券市场小例子说起~ 有个说法,当股票跌的时候买入永远比涨的时候买入挣钱,为什么。假设你有100元,股票每股1元。当股票跌到0.5元,你买入200股,这个股票涨到10元,你赚20倍,100元变成2000元。但是如果这个股票从1元涨到2元,你只能买入50股,再涨到10元,你只赚5倍,100元变成500元。高下立见。所以从这个角度看右侧交易不如左侧交易。(友情提示,举个例子而已,不要太认真,还有句话叫认真你就输啦~)

但是这个过程却是反本性的,因为你5毛买入之后很有可能继续跌,你能否克服恐惧的本性承受浮亏继续买入?当股票从5毛涨到1元,已经翻倍,能否耐住寂寞拿到10元?当股票涨到10元,能否克服贪婪卖掉,拒绝涨到100元云云的诱惑?抛开这后面的股价判断方法不说,即使一个人能把这个过程看的准确,但最后他的本性是否仍旧导致他错误的操作~这个过程说来容易,其实很难。应该去亲身体会一下~~

还有一个例子,某天领导把你叫去,毫无理由臭骂一通,到最后竟然还甩你一巴掌……人的本性这时候就是无边的愤怒!但如果这时候我也上去还给领导一巴掌,我想恐怕这样的人是没法成功的。

这时候……

思考一:君子报仇十年不晚,我记得你这一天,我将更加努力,等我发达了你来求我,有你好看。或者哪天你把柄落我手里我整死你。现在就先装作忍着。

思考二:其实上面的这个是忍得一时,但是仍被愤怒冲昏了头脑。明辨是非之人应该冷静分析,通过领导平常的举止判断领导本次到底是个什么情况。如果平常领导就是个莽人,那没话可说,又是另一番策略。但是如果领导平常就不轻易生气呢?那么很有可能:1.他在故意试你。2.他有可能真有什么不顺心的事情,说不定他自己遇到了人生很大的挫折。假如这个领导平时很有能力,我们只能做到宽容。被领导甩一巴掌,仍能冷静,此乃将帅之才!终有一天,你成为领导的领导,到时候你仍以宽容待人,不用怕“领导”会忘记当初甩你那一巴掌,他永远记得!如果这个“领导”很有能力,那这样得来的下属恐怕不会轻易背叛。

但是这真的说起来太简单了,这个道理恐怕谁都明白,真正做起来呢?

陷入了深思……

3月 15

管仲

具体内容抄自:http://baike.baidu.com/view/2810.htm

管仲,超级大牛一枚,要熟知其思想和事迹,每个朝代巨牛总就那么几个~

管仲(约前723或前716-前645)名夷吾,谥曰“敬仲”,汉族,中国春秋时期齐国颍上(今安徽颍上)人,史称管子。春秋时期齐国著名的政治家、军事家,周穆王的后代。管仲少时丧父,老母在堂,生活贫苦,不得不过早地挑起家庭重担,为维持生计,与鲍叔牙合伙经商;后从军,到齐国,几经曲折,经鲍叔牙力荐,为齐国上卿(即丞相),被称为“春秋第一相”,辅佐齐桓公成为春秋时期的第一霸主,所以又说“管夷吾举于士”。管仲的言论见于《国语·齐语》,另有《管子》一书传世。

国多财则远者来,地辟举则民留处,仓廪实而知礼节,衣食足而知荣辱

下次看到百度百科里没有的东西记到这里来