分类: 逻辑

  • 2019-11-08-关于定投的思考

    昨天我写了一篇比特币定投收益分析的文章,发到群里面之后,小伙伴们纷纷发表意见。其中两种意见比较有价值。

    一种意见是历史不代表未来,我是同意这一点的。

    因为未来是无法预测的,定投是否成功的关键还在于选择的标的,说的更直接一点在于你自己的判断和对这个判断的信心。

    如果判断失误,定投是没有意义的,而且可能投的越多亏的越多。

    至于怎么做出判断,每个人都有自己的标准,当然有些是理性的,有些只是碰运气,没有人能百分之百判断正确。

    比较靠谱的方法是看长期的趋势,就是巴菲特所说的价值投资,标的短期价格没有任何人能够预测,但是长期来看是跟它本身的价值一致的。

    可惜长期趋势也不是那么容易判断的,在某一个时间点,我们其实是没有足够的信息判断所谓的长期趋势向上还是向下,掌握的信息越多当然越有利,但是没有人敢说自己有百分之百的把握。

    即使是一些明显会向上的行业,具体到你投资的那个标的是否能够增长还是不一定的。比如按照现在的中国人口变化趋势,中国老龄人口比例是不断升高的,所以20年内养老行业肯定是上升趋势的,可是没有哪个标的叫做养老行业。

    你只能具体到某一个公司,这个公司可能是做疗养院,养老院,保健品或者其他跟养老行业有关的事情。

    一旦涉及到具体的公司,你要考虑的就不仅仅是整个长期的趋势了,你要考虑运作这个公司的人是否靠谱,公司的运营方法是否得当,公司的成本管理是否合理,公司有没有受到政策的影响等等一系列的因素。

    这其实是一件很专业的事情。巴菲特就是因为擅长这件事变成世界最有钱的几个人之一。

    另外一种意见说定投是没有意义的,就像昨天那篇文章里面每个月1000块钱投79个月,有个小伙伴说你还不如开始定投的那个月一次拿79000块钱买成比特币,删掉软件,放到今天再看。

    我稍微算了一下,如果这么操作的话,收益有69.38倍,比我用定投的收益20.1倍强多了。

    我差点同意了他的意见,感觉只要选择标的是对的,而且你有信心,直接一把梭哈收益比定投还要好。

    不过我又回头仔细想了一下,这么思考是不对的,因为你一把梭哈,结果是不太确定的,如果你在2017年最高点梭哈你就悲剧了,因为直到今天价格(2019-11-08, 9,242.60USD)也不到最高点(2017-12-17, 19308.3USD)的一半,你的收益是-52%,就是亏了一半多,俗称腰斩。

    而如果用定投的话,即使你是在最高点那一天买入,然后每个月再投1000块钱,到今天为止收益也有60%。

    $btc = 0;
    $money = 0;
    $init_price = ($result[0][$keys[1]]+$result[0][$keys[4]])/2;
    echo 'initial price on '.$result[0][$keys[0]].': '.$init_price.PHP_EOL;
    foreach ($result as $row) {
        if (strtotime($row[$keys[0]])>strtotime('2017-11-30')){
            if (explode("-", $row[$keys[0]])[2]=='17') {
                $price = ($row[$keys[1]]+$row[$keys[4]])/2;
                $spend = 140*($init_price/$price);
                $btc += $spend/$price;
                $money += $spend;
                echo $row[$keys[0]].' '.$row[$keys[1]].' '.$row[$keys[4]].' ';
                echo 'buy '.$spend/$price.' BTC for '.$spend.' USD'.PHP_EOL;
                $init_price = $price > $init_price ? $price: $init_price;
            }
        }
    }
    echo 'total:'.PHP_EOL;
    echo 'buy '.$btc.' BTC for '.$money.' USD'.PHP_EOL;

    结果如下:

    2017-12-17 19475.80 19140.80 buy 5.0604000119016E-5 BTC for 0.977077215498 USD
    2018-01-17 11431.10 11188.60 buy 0.021132865240077 BTC for 239.00953593549 USD
    2018-02-17 10207.50 11112.70 buy 0.023787539157875 BTC for 253.57754617687 USD
    2018-03-17 8321.91 7916.88 buy 0.041003859231437 BTC for 332.92652962444 USD
    2018-04-17 8071.66 7902.09 buy 0.042375837907192 BTC for 338.45052038501 USD
    2018-05-17 8370.05 8094.32 buy 0.039887960431049 BTC for 328.36506954108 USD
    2018-06-17 6545.53 6499.27 buy 0.063541463744209 BTC for 414.44284312523 USD
    2018-07-17 6739.65 7321.04 buy 0.054691369482636 BTC for 384.4991959854 USD
    2018-08-17 6340.91 6580.63 buy 0.064759503785061 BTC for 418.39625926941 USD
    2018-09-17 6514.06 6281.20 buy 0.066044070848885 BTC for 422.52552898495 USD
    2018-10-17 6590.52 6544.43 buy 0.062672239975984 BTC for 411.59836923627 USD
    2018-11-17 5578.58 5554.33 buy 0.087239801476468 BTC for 485.61642912769 USD
    2018-12-17 3253.12 3545.86 buy 0.23390771030276 BTC for 795.16692209714 USD
    2019-01-17 3651.87 3678.56 buy 0.20122093521853 BTC for 737.51799007698 USD
    2019-02-17 3633.36 3673.84 buy 0.20250235419038 BTC for 739.86260126998 USD
    2019-03-17 4047.72 4025.23 buy 0.16590808085281 BTC for 669.68382066035 USD
    2019-04-17 5236.14 5251.94 buy 0.098296958985144 BTC for 515.47318479645 USD
    2019-05-17 7886.93 7343.90 buy 0.046610624688886 BTC for 354.95925041511 USD
    2019-06-17 8988.92 9320.35 buy 0.032254477185794 BTC for 295.27796575177 USD
    2019-07-17 9471.21 9693.80 buy 0.029438383903566 BTC for 282.09346094784 USD
    2019-08-17 10358.72 10231.74 buy 0.025503510657795 BTC for 262.56450802945 USD
    2019-09-17 10281.51 10241.27 buy 0.025671998916176 BTC for 263.43039295846 USD
    2019-10-17 8047.81 8103.91 buy 0.041447134508633 BTC for 334.72125569289 USD
    total:
    buy 1.6699492846915 BTC for 9281.1362573038 USD

    最后结果是花了9281.14USD(66293.85人民币)买到了1.6699492846915个比特币,这些比特币今天(2019-11-08)的价格是107,479.85元人民币。1.62倍的收益。

    所以定投策略还是有意义的,它的作用就在于你不用去判断现在是什么点位,能不能进去投,只要你判断这个标的长期是增长的,你随时可以开始定投,几乎可以保证你是盈利的。

  • 2019-11-07-定投比特币收益分析

    有一个朋友,我们认识很多年了。2013年的时候,记得某一天我跟他说比特币你可以了解一下,现在好像涨到一千块一个了,你可以花一万块钱买上十个,然后放起来,过几年再看,肯定不是现在的价格。他一脸蒙逼,然后事情就过去了。

    到了今年的某一天,那个朋友跟我说,现在比特币好几万一个了,当初应该买一点的,我说你现在买也不迟呀。然后他就决定以后每个月给我一千块钱让我帮他买比特币。

    今天我心血来潮就想算一下,如果从2013年起每个月买一千块钱比特币,现在有多少收益。(你看,为了朋友感觉扎心,我也很拼的。)

    首先要拿到比特币价格的历史数据,google一下之后,我在coinmarketcap找到从2013年04月28日到今天的数据。
    直接chrome里面右键copy element,把数据复制到一个history.html文件里面。

    数据大概长这样:

    <table class="table">
    <thead>
    <tr>
    <th class="text-left">Date</th>
    <th class="text-right">Open*</th>
    <th class="text-right">High</th>
    <th class="text-right">Low</th>
    <th class="text-right">Close**</th>
    <th class="text-right">Volume</th>
    <th class="text-right">Market Cap</th>
    </tr>
    </thead>
    <tbody>
    <tr class="text-right">
    <td class="text-left">Nov 06, 2019</td>
    <td data-format-fiat="" data-format-value="9340.86427973">9,340.86</td>
    <td data-format-fiat="" data-format-value="9423.23703723">9,423.24</td>
    <td data-format-fiat="" data-format-value="9305.90931362">9,305.91</td>
    <td data-format-fiat="" data-format-value="9360.87991187">9,360.88</td>
    <td data-format-market-cap="" data-format-value="23133895764.6">23,133,895,765</td>
    .
    ..
    ...
    <tr class="text-right">
    <td class="text-left">Apr 28, 2013</td>
    <td data-format-fiat="" data-format-value="135.300003052">135.30</td>
    <td data-format-fiat="" data-format-value="135.979995728">135.98</td>
    <td data-format-fiat="" data-format-value="132.100006104">132.10</td>
    <td data-format-fiat="" data-format-value="134.210006714">134.21</td>
    <td data-format-market-cap="" data-format-value="-">-</td>
    <td data-format-market-cap="" data-format-value="1488566728.25">1,488,566,728</td>
    </tr>
    </tbody>
    </table>

    一看这个数据很归整,每一行7个数据,分别是日期,开盘价格,最高价格,最低价格,收盘价格,交易量和总市值。我就写了个php脚本来分析:

    <?php
    $html = file_get_contents("history.html");
    $doc = new DOMDocument();
    $doc->loadHTML('<?xml encoding="utf-8" ?>'.$html);
    $trs = $doc->getElementsByTagName('tr');
    $ths = $trs[0]->getElementsByTagName('th');
    $keys = [];
    foreach ($ths as $th) {
        $keys[] = trim($th->nodeValue, "*").PHP_EOL;
    }
    $result = [];
    foreach ($trs as $tr) {
        $tds = $tr->getElementsByTagName('td');
        $row = [];
        if ($tds->length > 0) {
            for ($i = 0; $i<sizeof($keys); $i++) {
                if ($i == 0) {
                    $tds[$i]->nodeValue = date('Y-m-d', strtotime($tds[$i]->nodeValue));
                }
                $row[$keys[$i]] = str_replace(',', '', $tds[$i]->nodeValue);
            }
        }
        if ($row) {
            $result[]=$row;
        }
    }
    // reverse order
    $result = array_reverse($result);

    然后我就计算如果每个月一号买1000块钱的比特币,最后能买到多少币:

    (因为拿到的价格是用美元计算的,为了方便计算,我就把1000块写成140usd)

    $btc = 0;
    $money = 0;
    echo 'simple policy: buy 100 usd on the first day of everymonth:'.PHP_EOL;
    foreach ($result as $row) {
        if (explode("-", $row[$keys[0]])[2]=='01') {
            $price = ($row[$keys[1]]+$row[$keys[4]])/2;
            $btc += 140/$price;
            $money += 140;
            echo $row[$keys[0]].' '.$row[$keys[1]].' '.$row[$keys[4]].' ';
            echo 'buy '.(100/$price).' BTC for 100 USD'.PHP_EOL;
        }
    }
    echo 'total:'.PHP_EOL;
    echo 'buy '.$btc.' BTC for '.$money.' USD'.PHP_EOL;

    输出结果是这样的:

    buy 140 usd on the first day of everymonth:
    2013-05-01 139.00 116.99 buy 1.0937927262784 BTC for 140 USD
    2013-06-01 128.82 129.30 buy 1.0847667751433 BTC for 140 USD
    2013-07-01 97.51 88.05 buy 1.5089458935115 BTC for 140 USD
    2013-08-01 106.21 104.00 buy 1.3320013320013 BTC for 140 USD
    2013-09-01 135.14 138.34 buy 1.0238408658768 BTC for 140 USD
    2013-10-01 132.68 132.18 buy 1.0571622744091 BTC for 140 USD
    2013-11-01 203.90 206.18 buy 0.68279360124854 BTC for 140 USD
    2013-12-01 1128.92 955.85 buy 0.13430738162963 BTC for 140 USD
    2014-01-01 754.97 771.40 buy 0.18344176051678 BTC for 140 USD
    2014-02-01 828.61 832.58 buy 0.16855386801028 BTC for 140 USD
    2014-03-01 549.92 565.61 buy 0.25100176597671 BTC for 140 USD
    2014-04-01 457.00 478.38 buy 0.29934358228741 BTC for 140 USD
    2014-05-01 447.63 457.76 buy 0.30925899336198 BTC for 140 USD
    2014-06-01 623.69 630.23 buy 0.22329973204032 BTC for 140 USD
    2014-07-01 641.39 640.81 buy 0.21837466853845 BTC for 140 USD
    2014-08-01 586.20 594.92 buy 0.23706312652398 BTC for 140 USD
    2014-09-01 477.79 474.88 buy 0.29391079807278 BTC for 140 USD
    2014-10-01 387.43 383.61 buy 0.36314588088815 BTC for 140 USD
    2014-11-01 338.65 325.75 buy 0.421432871764 BTC for 140 USD
    2014-12-01 378.25 379.24 buy 0.36964184345668 BTC for 140 USD
    2015-01-01 320.43 314.25 buy 0.4411672023697 BTC for 140 USD
    2015-02-01 216.87 226.97 buy 0.6308579668349 BTC for 140 USD
    2015-03-01 254.28 260.20 buy 0.54423884310372 BTC for 140 USD
    2015-04-01 244.22 247.27 buy 0.56969622983174 BTC for 140 USD
    2015-05-01 235.94 232.08 buy 0.59826503140891 BTC for 140 USD
    2015-06-01 230.23 222.93 buy 0.61788330832377 BTC for 140 USD
    2015-07-01 263.35 258.62 buy 0.53642929670288 BTC for 140 USD
    2015-08-01 284.69 281.60 buy 0.49444630842854 BTC for 140 USD
    2015-09-01 230.26 228.12 buy 0.61084689558881 BTC for 140 USD
    2015-10-01 236.00 237.55 buy 0.59127864005913 BTC for 140 USD
    2015-11-01 315.01 325.43 buy 0.43719942539504 BTC for 140 USD
    2015-12-01 377.41 362.49 buy 0.37842951750237 BTC for 140 USD
    2016-01-01 430.72 434.33 buy 0.32368071209757 BTC for 140 USD
    2016-02-01 369.35 373.06 buy 0.37715009226708 BTC for 140 USD
    2016-03-01 437.92 435.12 buy 0.32071840923669 BTC for 140 USD
    2016-04-01 416.76 417.96 buy 0.33544182480353 BTC for 140 USD
    2016-05-01 448.48 451.88 buy 0.31098671642454 BTC for 140 USD
    2016-06-01 531.11 536.92 buy 0.26216492046104 BTC for 140 USD
    2016-07-01 672.52 676.30 buy 0.20758885544402 BTC for 140 USD
    2016-08-01 624.60 606.27 buy 0.22748137496242 BTC for 140 USD
    2016-09-01 575.55 572.30 buy 0.24393431197456 BTC for 140 USD
    2016-10-01 609.93 613.98 buy 0.2287749916252 BTC for 140 USD
    2016-11-01 701.34 729.79 buy 0.19564959158148 BTC for 140 USD
    2016-12-01 746.05 756.77 buy 0.18631639184999 BTC for 140 USD
    2017-01-01 963.66 998.33 buy 0.14271224623979 BTC for 140 USD
    2017-02-01 970.94 989.02 buy 0.14286005836854 BTC for 140 USD
    2017-03-01 1180.04 1222.50 buy 0.11654332498106 BTC for 140 USD
    2017-04-01 1071.71 1080.50 buy 0.1300988286459 BTC for 140 USD
    2017-05-01 1348.30 1421.60 buy 0.10108668182967 BTC for 140 USD
    2017-06-01 2288.33 2407.88 buy 0.059622546691907 BTC for 140 USD
    2017-07-01 2492.60 2434.55 buy 0.056827983722842 BTC for 140 USD
    2017-08-01 2871.30 2718.26 buy 0.050093388388353 BTC for 140 USD
    2017-09-01 4701.76 4892.01 buy 0.029185606909484 BTC for 140 USD
    2017-10-01 4341.05 4403.74 buy 0.032019065066171 BTC for 140 USD
    2017-11-01 6440.97 6767.31 buy 0.021198823768121 BTC for 140 USD
    2017-12-01 10198.60 10975.60 buy 0.013223640090299 BTC for 140 USD
    2018-01-01 14112.20 13657.20 buy 0.010083041045179 BTC for 140 USD
    2018-02-01 10237.30 9170.54 buy 0.014427159333548 BTC for 140 USD
    2018-03-01 10385.00 10951.00 buy 0.013123359580052 BTC for 140 USD
    2018-04-01 7003.06 6844.23 buy 0.020220563012691 BTC for 140 USD
    2018-05-01 9251.47 9119.01 buy 0.015241844524476 BTC for 140 USD
    2018-06-01 7500.70 7541.45 buy 0.018614360314184 BTC for 140 USD
    2018-07-01 6411.68 6385.82 buy 0.021879273295566 BTC for 140 USD
    2018-08-01 7769.04 7624.91 buy 0.018188963846186 BTC for 140 USD
    2018-09-01 7044.81 7193.25 buy 0.019665600510182 BTC for 140 USD
    2018-10-01 6619.85 6589.62 buy 0.02119691403213 BTC for 140 USD
    2018-11-01 6318.14 6377.78 buy 0.022054329264835 BTC for 140 USD
    2018-12-01 4024.46 4214.67 buy 0.033984170658795 BTC for 140 USD
    2019-01-01 3746.71 3843.52 buy 0.036889527721821 BTC for 140 USD
    2019-02-01 3460.55 3487.95 buy 0.040296466863352 BTC for 140 USD
    2019-03-01 3853.76 3859.58 buy 0.036300746498923 BTC for 140 USD
    2019-04-01 4105.36 4158.18 buy 0.033883783463262 BTC for 140 USD
    2019-05-01 5350.91 5402.70 buy 0.026037767782168 BTC for 140 USD
    2019-06-01 8573.84 8564.02 buy 0.016338095888285 BTC for 140 USD
    2019-07-01 10796.93 10583.13 buy 0.013096314977601 BTC for 140 USD
    2019-08-01 10077.44 10399.67 buy 0.013673804555428 BTC for 140 USD
    2019-09-01 9630.59 9757.97 buy 0.014441505712647 BTC for 140 USD
    2019-10-01 8299.72 8343.28 buy 0.016823889923692 BTC for 140 USD
    2019-11-01 9193.99 9261.10 buy 0.015171966107995 BTC for 140 USD
    total:
    buy 22.313812243429 BTC for 11060 USD

    就是从2013年5月1号起每个月的1号买1000块钱比特币,到2019年11月1号,总共79个月,共花了79000块钱,买到了22.313812243429个比特币,这些比特币今天(2019-11-07)的价格是1,429,726.68人民币。18.1倍的收益。

    我想起之前读过的一本书叫做价值平均策略,大概的意思是动态的调整每个月投资的额度,具体算法我不太记得了,我就自己想了一个简单粗暴的动态策略,用已知的最高价格作为参考值,把最高价格除以当前价格做为系数,这样价格越低买入的越多。代码如下:

    $btc = 0;
    $money = 0;
    $init_price = ($result[0][$keys[1]]+$result[0][$keys[4]])/2;
    echo 'initial price on '.$result[0][$keys[0]].': '.$init_price.PHP_EOL;
    foreach ($result as $row) {
        if (explode("-", $row[$keys[0]])[2]=='01') {
            $price = ($row[$keys[1]]+$row[$keys[4]])/2;
            $spend = 140*($init_price/$price);
            $btc += $spend/$price;
            $money += $spend;
            echo $row[$keys[0]].' '.$row[$keys[1]].' '.$row[$keys[4]].' ';
            echo 'buy '.$spend/$price.' BTC for '.$spend.' USD'.PHP_EOL;
            $init_price = $price > $init_price ? $price: $init_price;
        }
    }
    echo 'total:'.PHP_EOL;
    echo 'buy '.$btc.' BTC for '.$money.' USD'.PHP_EOL;

    输出结果是这样的:

    buy 140*(local high price/current price):
    initial price on 2013-04-28: 134.755
    2013-05-01 139.00 116.99 buy 1.1515609112047 BTC for 147.39403882964 USD
    2013-06-01 128.82 129.30 buy 1.1326340212648 BTC for 146.17774678444 USD
    2013-07-01 97.51 88.05 buy 2.191614613927 BTC for 203.33800388015 USD
    2013-08-01 106.21 104.00 buy 1.7077573806559 BTC for 179.49383949384 USD
    2013-09-01 135.14 138.34 buy 1.0089781766947 BTC for 137.96767588123 USD
    2013-10-01 132.68 132.18 buy 1.0915681447006 BTC for 144.5563694027 USD
    2013-11-01 203.90 206.18 buy 0.45535113653299 BTC for 93.365197034725 USD
    2013-12-01 1128.92 955.85 buy 0.026418631819663 BTC for 27.538385529339 USD
    2014-01-01 754.97 771.40 buy 0.25055122877977 BTC for 191.21693953629 USD
    2014-02-01 828.61 832.58 buy 0.21153272498137 BTC for 175.6980237059 USD
    2014-03-01 549.92 565.61 buy 0.46908729631231 BTC for 261.64047582763 USD
    2014-04-01 457.00 478.38 buy 0.667175394006 BTC for 312.03126002266 USD
    2014-05-01 447.63 457.76 buy 0.71210624326671 BTC for 322.36693579562 USD
    2014-06-01 623.69 630.23 buy 0.37125859892633 BTC for 232.76429118285 USD
    2014-07-01 641.39 640.81 buy 0.35506235979481 BTC for 227.63047886445 USD
    2014-08-01 586.20 594.92 buy 0.41843512452875 BTC for 247.1110471417 USD
    2014-09-01 477.79 474.88 buy 0.6431780306908 BTC for 306.3682072491 USD
    2014-10-01 387.43 383.61 buy 0.98188892677318 BTC for 378.5378190496 USD
    2014-11-01 338.65 325.75 buy 1.3223820109383 BTC for 439.29530403371 USD
    2014-12-01 378.25 379.24 buy 1.0173312201919 BTC for 385.30911299159 USD
    2015-01-01 320.43 314.25 buy 1.4491273531296 BTC for 459.86607424214 USD
    2015-02-01 216.87 226.97 buy 2.9632159415969 BTC for 657.59688175919 USD
    2015-03-01 254.28 260.20 buy 2.2053584452988 BTC for 567.30640646867 USD
    2015-04-01 244.22 247.27 buy 2.416500048966 BTC for 593.84280453315 USD
    2015-05-01 235.94 232.08 buy 2.6649395101285 BTC for 623.62249476518 USD
    2015-06-01 230.23 222.93 buy 2.8425822771077 BTC for 644.07229234707 USD
    2015-07-01 263.35 258.62 buy 2.1425210354757 BTC for 559.16585244363 USD
    2015-08-01 284.69 281.60 buy 1.8202808285906 BTC for 515.40341521129 USD
    2015-09-01 230.26 228.12 buy 2.7782086533372 BTC for 636.73764125834 USD
    2015-10-01 236.00 237.55 buy 2.6030619162413 BTC for 616.33998521803 USD
    2015-11-01 315.01 325.43 buy 1.4231781994891 BTC for 455.73012304041 USD
    2015-12-01 377.41 362.49 buy 1.0662772066542 BTC for 394.4692526017 USD
    2016-01-01 430.72 434.33 buy 0.78007032906727 BTC for 337.39991907982 USD
    2016-02-01 369.35 373.06 buy 1.0590794814936 BTC for 393.13559892782 USD
    2016-03-01 437.92 435.12 buy 0.76585736967879 BTC for 334.31205901219 USD
    2016-04-01 416.76 417.96 buy 0.83778878317957 BTC for 349.65952654782 USD
    2016-05-01 448.48 451.88 buy 0.72008505131324 BTC for 324.1678884002 USD
    2016-06-01 531.11 536.92 buy 0.51173989609801 BTC for 273.27678061478 USD
    2016-07-01 672.52 676.30 buy 0.32085453816226 BTC for 216.38750908201 USD
    2016-08-01 624.60 606.27 buy 0.385293610276 BTC for 237.12317304021 USD
    2016-09-01 575.55 572.30 buy 0.44304302441539 BTC for 254.2734677876 USD
    2016-10-01 609.93 613.98 buy 0.38968816276562 BTC for 238.47161964524 USD
    2016-11-01 701.34 729.79 buy 0.28500862887461 BTC for 203.94219952066 USD
    2016-12-01 746.05 756.77 buy 0.25846530139145 BTC for 194.21341211855 USD
    2017-01-01 963.66 998.33 buy 0.15164308156174 BTC for 148.76110479666 USD
    2017-02-01 970.94 989.02 buy 0.15195736845904 BTC for 148.91518194249 USD
    2017-03-01 1180.04 1222.50 buy 0.10112881684416 BTC for 121.48301381038 USD
    2017-04-01 1071.71 1080.50 buy 0.14523101359762 BTC for 156.28381988746 USD
    2017-05-01 1348.30 1421.60 buy 0.087679987206416 BTC for 121.43239828153 USD
    2017-06-01 2288.33 2407.88 buy 0.035166334572328 BTC for 82.574246040956 USD
    2017-07-01 2492.60 2434.55 buy 0.054164404460803 BTC for 133.43807271952 USD
    2017-08-01 2871.30 2718.26 buy 0.044156899397747 BTC for 123.40881929884 USD
    2017-09-01 4701.76 4892.01 buy 0.017004233055095 BTC for 81.567350478488 USD
    2017-10-01 4341.05 4403.74 buy 0.03512760693623 BTC for 153.59177292994 USD
    2017-11-01 6440.97 6767.31 buy 0.015397662640547 BTC for 101.68831975094 USD
    2017-12-01 10198.60 10975.60 buy 0.0082487905532152 BTC for 87.330770465944 USD
    2018-01-01 14112.20 13657.20 buy 0.0076883305976663 BTC for 106.75016384942 USD
    2018-02-01 10237.30 9170.54 buy 0.020642872076286 BTC for 200.31677919851 USD
    2018-03-01 10385.00 10951.00 buy 0.017080419081473 BTC for 182.21391076115 USD
    2018-04-01 7003.06 6844.23 buy 0.040550382242634 BTC for 280.7564512623 USD
    2018-05-01 9251.47 9119.01 buy 0.023040055422503 BTC for 211.628438669 USD
    2018-06-01 7500.70 7541.45 buy 0.034364078094468 BTC for 258.45480865435 USD
    2018-07-01 6411.68 6385.82 buy 0.04747601421011 BTC for 303.78714592694 USD
    2018-08-01 7769.04 7624.91 buy 0.032811371521298 BTC for 252.54830631514 USD
    2018-09-01 7044.81 7193.25 buy 0.038355079751556 BTC for 273.05096340372 USD
    2018-10-01 6619.85 6589.62 buy 0.044560878258085 BTC for 294.31279226192 USD
    2018-11-01 6318.14 6377.78 buy 0.048238764192504 BTC for 306.21774554345 USD
    2018-12-01 4024.46 4214.67 buy 0.11454122324716 BTC for 471.86001434617 USD
    2019-01-01 3746.71 3843.52 buy 0.13496297887131 BTC for 512.20002555917 USD
    2019-02-01 3460.55 3487.95 buy 0.16104320456432 BTC for 559.50435345758 USD
    2019-03-01 3853.76 3859.58 buy 0.1306891631676 BTC for 504.02497491359 USD
    2019-04-01 4105.36 4158.18 buy 0.11386552694181 BTC for 470.46616825235 USD
    2019-05-01 5350.91 5402.70 buy 0.067238182215101 BTC for 361.52659432507 USD
    2019-06-01 8573.84 8564.02 buy 0.02647349902264 BTC for 226.84955998007 USD
    2019-07-01 10796.93 10583.13 buy 0.017010093009046 BTC for 181.83840456949 USD
    2019-08-01 10077.44 10399.67 buy 0.0185433075381 BTC for 189.85667411075 USD
    2019-09-01 9630.59 9757.97 buy 0.020683947066558 BTC for 200.51597436839 USD
    2019-10-01 8299.72 8343.28 buy 0.028071220864445 BTC for 233.59466442348 USD
    2019-11-01 9193.99 9261.10 buy 0.022829278840654 BTC for 210.65819781968 USD
    total:
    buy 51.375763838804 BTC for 22893.725512278 USD

    最后结果是花了22893.72USD(就是163526.57人民币)买到了51.375763838804个比特币,这些比特币今天(2019-11-07)的价格是3,290,352.13元人民币。20.1倍的收益。

    两者‌‍‍‌‍​‌‌‍​‌‌‌‌‌​‌‌‌‍‍​‍‍‍‍‌​‌‌‍‌​‌‍‍‌‍​‌‌‍​‍‌‌‌‌​‌‌‌‌‌​‍‍‍‌‌​‍‍‌‌‌​‌‍‍‌‍​‌‌‍​‍‍‍‍‌​‌‌‌‌‍​‌‌‍‌​‌​‌‍‍‌‍​‌‌‍​‍‌‌‌‌​‌‌‌‍‍​‌‍​‌‌‌‌‌​​‌‌‌‌​‍​‍​‌‍‍‌​‌‌‌​​​​‍​‌​‍‌‍‌​‌‌‌‌​​‌‍‌‌​‌‍​‍‍‍​‍‍‌​‍‍‍​‍‌​‍‍‌​‌‌‌​‌‌‌‌​‌‌‍​‍‍‍​​‍‌‍‌​‍‍‍​‍‍​对比,后一个方案虽然收益多了两倍,但是投入的资金也翻倍了,而且每个月还要计算投多少钱进去,感觉不太值得,当然如果看最后结果的话,

    79000变成1,429,726.68 (八万变成一百四十万)

    163526.57变成3,290,352.13 (十六万变成三百二十万)

    可能很多人还是愿意选择第二个方案,因为16万虽然不是小数目,但是努力一下还是可以拿出来的,最后的收益也更有吸引力的。

    友情提示,本文章只是历史数据分析,并不构成任何投资建议,比特币风险很大,你需要强大的心脏来承受价格的巨大波动。

  • 2019-05-24-先后关系与因果关系

    刚才看了一篇关于走路太多是否会影响膝关节的文章,里面的结论是走路与膝关节损伤没有必然的因果关系。

    文章结尾有一段话,我觉得很要命。

    上面说膝关节炎是很常见的病,走不走路都可能得膝关节炎。

    我猜想认为走路太多会损伤膝盖这种说法就是这么来的,有些人走路锻炼一段时间之后发现得了膝关节炎,然后就说自己因为走路太多,然后得了膝关节炎。

    他们不知道先后发生的两件事情不一定是因果关系,可能两件事完全没有关系。

    就像古代求雨,那些老百姓献上牲口去庙里面请人做法然后天就下雨了。

    他们以为因为献祭,所以下雨。

    其实献祭和下雨这两件事就没有因果关系,只是时间上有先后关系,说通俗一点就是凑巧。

    有人会问为什么会每次都凑巧呢?

    首先,他们去献祭的时间一般是雨季快来临的时候或者就是雨季,所以献祭之后下雨的概率本身就很高。

    其次,举行献祭的人肯定会宣传献祭之后成功下雨的事,没有人会宣传献祭之后一直没下雨。

    即使真没有下雨,那些献祭的法师或者官员也会找出种种借口,比如祭品有问题,或者献祭的老百姓触怒了上天。

    总之,这些无法证实的原因全靠他们一张嘴。

    还有一点,普通人对比较戏剧性的事情印象比较深刻,同时人类有遗忘痛苦的倾向。

    还是以求雨来举例子,如果和尚做法第二天或者是当天就下了雨,老百姓就会觉得“哇,这个太厉害了,”几十年都不会忘记。

    相反,如果献祭之后几天甚至几个月之后才下雨,甚至根本就没下雨,那么老百姓就不会有印象。

    再加上在古代如果求雨失败了,那么老百姓可能会生活很惨,可能会遇上灾荒,甚至会饿死人,由于人类遗忘痛苦的倾向,人们会倾向于忘记这件事。

    这样一来,人们有印象的都是那些求雨成功的案例。

    多数人一生都没有理解先后关系与因果关系的差别。

    下雨还是比较简单的案例,毕竟有云就有可能下雨。

    我举一个更复杂的例子,我们身体本身。

    比如你得感冒了,然后你吃了板蓝根,感冒就好了。

    而且这板蓝根非常灵,每次感冒都是这样。

    然后你就很容易得出结论,因为吃了板蓝根,所以感冒好了。

    实际上你吃板蓝根跟你感冒好没有因果关系,只有先后关系。

    有人会问那为什么每次都这样呢?因为感冒是一种自愈性疾病,就是它自己就会好,人体的免疫系统自己就会把病毒或者细菌干掉,跟你吃不吃板蓝根没关系,你就算是每天都喝一大杯水,你的感冒也会好。

    正因为感冒的这个特点,各种千奇百怪的治感冒的偏方都很有效,吃辣椒,喝醋,蒙头盖被子出汗,按摩背心,热敷,冰敷都有不错的效果。

    只要你的治疗手段不对免疫系统造成太大的伤害,这些手段最后都会生效。

    因为生效的不是这些偏方,而是你的免疫系统。

    因为科学尚未普及,所以大部分人根本不知道人体有免疫系统可以抵抗大部分人类已知的疾病。

    就是这些自愈性疾病给了一些千奇百怪的药物和偏方操作空间,几乎所有的中药都是靠这些自愈性疾病才存活下来。

    唉,科学尚未普及!

  • 2016-07-23-可怜之人必有可恨之处么

    刚才看了一个视频,讲的是一对山里残疾人的儿子因为担心娶不上媳妇不敢相认,最后被儿媳妇发现主动相认的故事。
    视频的主旨是孝顺父母,但是我想到的是另外的事。我以前听到过一句话叫可怜之人必有可恨之处,我一直深以为然。看了这个视频,我对这句话产生了怀疑。视频里面女的是瞎子,男的是跛子,他们的生活很可怜,你说他们有什么可恨的地方呢?就像之前我看到的观点,说穷人都不值得同情,因为现代社会的机会那么多,只要肯努力,就连要饭都不会很穷。我现在想的是真的这样么? 他们的逻辑是这样的,穷(可怜)是因为不努力(可恨), 所以穷人不值得同情。
    其实这个逻辑是有问题的:
    首先穷就是因为不努力么? 如果说变得有钱是穷人的目标,穷人就是指没有达到这个目标的人。但是没有达到致富这个目标可能的原因并不是只有一个。
    第一,很多穷人其实并没有意识到这个目标,或者说并没有把变得有钱当成生活的目标,原因是多方面的,有的人(大多数人)是因为浑浑噩噩根本没有生活目标,随波逐流得过且过;有的人是因为他们认为有比变得有钱更崇高的目标,比如追求真理(科学家),比如信奉上帝(神父),比如信仰真主(穆斯林), 比如共产主义(先烈们);还有的人意识到人生无常,所谓的人生目标毫无意义,追求彻底的解脱(佛教徒)。。。
    第二,我相信要实现变得有钱这个目标跟实现其他目标一样,都需要持续的行动,敏锐的眼光,再加上相当的运气。所以不努力(持续行动)只是穷的一个可能的原因而已, 换句话说努力只是致富的非必要不充分条件。仔细思考一下,你就会同意我的说法。为什么说努力是致富的非必要条件呢,因为你无法否认有的人没怎么努力就致富了,比如中彩票,比如富二代,比如官二代,比如你家拆迁了。为什么说努力是致富的不充分条件呢,我想没必要解释吧,如果你的大方向是错的,比如ibm在个人pc起步的时候努力的推行大型机,比如诺基亚在智能机出现之后继续努力的推广功能机,你的努力最后只是一场笑话。希望朋友们看到这里不要误会我的意思,千万千万不要认为我让你不要努力。作为一个普通人,就是说你没有巴菲特那样的眼光,也没有中彩票的运气,你想致富只能通过努力,但是你要做好思想准备,你的努力并不一定会让你变得很有钱,虽然努力可以大大提高你变得有钱的概率;相反如果你就是不想付出努力,寄希望于中彩票,每天混日子,你就不要去抱怨为什么自己没钱。当然鉴于现在我自己也还是穷人,我所说的怎样变得有钱也是只是纸上谈兵而已,朋友们不要当真。不过我继续顺着逻辑去推演:
    第三,就说努力本身,这里我把努力理解成持续行动。其实持续行动本身就是很困难的,因为它包括两个方面,持续和行动。先说持续,持续就是坚持,就这一个条件已经淘汰了一大批人,有一些人想赚钱,然后产生了一个想法,然后第二天还记得,第三天还记得,一个星期之后已经不太记得了,就算记起来也是种种怀疑,思前想后,最终也没有坚持把自己的想法变成行动;另外一些人行动了,遇到了困难,然后就告诉自己我不是没有尝试,只是太难了,没办法坚持下去。再说行动,有一些人很能坚持也一直在行动,但是他的事业并没有什么进展,原因在哪里呢?在于行动的正确性和有效性,有一句话叫做”你只是看上去很努力”, 说的就是这种情况,他不擅长总结,总是做着相同的事,没有去想办法提高自己做事的方法和效率。以我一个朋友的事为例,他们搞设计的,一次他们的老板说有一批设计稿要改标注,有几百个文件要改,时间很紧急,老板就说所有人加班,每个人改几个,一定要在交货之前改好,我朋友就问没有批量改的方法么,老板就说没有,之前一直是这样加班改的。我朋友就没说话,然后就去研究了一下,写了一个小的脚本,半天时间就全部改好了。不擅长总结思考的人虽然也很努力,但是不能达到想要的效果。
    回到可怜之人必有可恨之处这个话题,我觉得这是某些人给自己缺乏同情心找的借口。以前我是部分赞同穷人不值得同情这个观点,现在我深究可怜之人必有可恨之处这句话,我觉得我之前的想法是错的。为什么呢?第一,为什么可恨之人就不值得同情呢,只要是人,谁身上没有可恨之处呢,我看不出来是不是可恨跟是不是值得同情之间有什么必然的联系,相反我倒觉得可恨之人必有可怜之处更说得通,想想如果一个人周围的所有人都觉得他可恨,你不觉得他很可怜么,你不觉得应该同情他么?第二,就像我前面说过的,可怜之人未必有可恨之处,天生残疾的人是不是很可怜,你能说他可恨么?推广开来,可怜和可恨是两个方面的事,不能混为一谈。一个人身上的可怜之处未必是他的可恨之处。我们不能因为他身上的可恨之处就不可怜他,反过来也不能因为可怜之处就不恨他。穷人是值得同情的,跟他是不是可恨没有关系,穷本身就值得同情,跟残疾一样。
    朋友们,看到这里,你还觉得可怜之人必有可恨之处么?
    记得以后别人说起这句话,可以反驳一句,“未必吧?”

  • 2011-05-11-容易错的概率题

    某人有两个小孩,已知一个是男孩,生在周一,问两个都是男孩的概率。

    纯粹概率问题,视生男生女的概率相等,生在星期几的概率也相等。

    答案是13/27.

    原因:总共有以下27种情况。

    (甲,男,周一;乙,男,周一到七)7种情况。

    (甲,男,周二到七;乙,男,周一)6种情况。

    (甲,男,周一;乙,女,周一到七)7种情况。

    (甲,女,周一到七;乙,男,周一)7种情况。

    两个都是男孩的是上面两种,所以占了13/27。

  • 2010-05-13-开枪存活概率问题

    刚才看到一个朋友分享的日志,上面是75道逻辑题。其中第三道是这样的:


    三个小伙子同时爱上了一 个姑娘,为了决定他们谁能娶这个姑娘,他们决定用手枪进行一次决斗。小李的命中率是30%,小黄比他好些,命中率是50%,最出色的枪手是小林,他从不失误,命中率是100%。由于这个显而易见的事实,为公平起见,他们决定按这样的顺序:小李先开枪,小黄第二,小林最后。然后这样循环,直到他们只剩下一个 人。那么这三个人中谁活下来的机会最大呢?他们都应该采取什么样的策略?


    上面给出的答案是这样的:


    小黄。因为小李是第一个出手的,他要解决的第一个人就会是小林,这样就会保证自己的安全,因为如果小黄被解决,自己理所当然地会成为小林的目标,他也必定会被打死。而小黄如果第一枪不打小林而去打小李,自己肯定会死(他命中较高,会成为接下来的神枪手小林的目标)。他必定去尝试先打死小林。那么30% 50%的几率是80%(第一回合小林的死亡率,但会有一点点偏差,毕竟相加了)。那么第一回合小黄的死亡率是20%多一点点(小林的命中减去自己的死亡率)。假设小林第一回合死了,就轮到小李打小黄了,那么小李的命中就变成了50%多一点点(自己的命中加上小黄的死亡率)。这样就变成了小李小黄对决,第二回合的小李的第一枪命中是50%,小黄也是。可是如果拖下去的话占上风的自然就是小黄了,可能赢得也自然是小黄了。至于策略我看大家都领悟了吧。


    我觉得这个分析是不对的,原因如下:

    第一回合,小李开枪,必打小林,两种结果:
    a, 30%机会打中,此时剩下小李和小黄,轮到小黄开枪,两种结果:
    a1, 50%机会打中,此时只剩下小黄。
    a2, 50%机会没打中,剩下小黄和小李。
    b, 70%机会没打中,轮到小黄开枪,必打小林,两种结果:
    b1, 50%机会打中,此时剩下小黄和小李。
    b2, 50%机会没打中,轮到到小林开枪,必打小黄,剩下小李和小林。
    这样第一回合下来,小李活的机率是70%+30%*50%=85%,小黄活的机率是30%+70%*50%=65%,小林活的机率是70%*50%=35%。

    第二回合(a2+b1+b2,出现概率85%)二种情况:
    c,剩下小李和小黄(a2+b1, 15%+35%=50%),小李先开枪,两种结果
    c1, 30%机会打中,只剩下小李。
    c2, 70%机会没打中,轮到小黄,两种结果:
    c3, 50%机会打中,只剩下小黄。
    c4, 50%机会没打中,剩下小李和小黄。
    d,剩下小李和小林(b2, 70%*50%=35%),小李先开枪,两种结果
    d1, 30%机会打中,只剩下小李。
    d2, 70%机会没打中,小林开枪,只剩下小林。
    所以第二回合下来,小李活的机率是50%*30%(c1)+50%*70%*50%(c4)+35%*30%(d1)=43%,小黄活的机率是30%*50%(a1)+50%*70%(c2)=50%,小林活的机率是35%*70%(d2)=24.5%。

    第三回合(c4,出现概率50%*70%*50%=17.5%)只有一种情况:
    e.剩下小李和小黄(c4, 50%*70%*50%=17.5%),小李先开枪,两种结果
    e1, 30%机会打中,只剩下小李。
    e2, 70%机会没打中,轮到小黄,两种结果:
    e3, 50%机会打中,只剩下小黄。
    e4, 50%机会没打中,剩下小李和小黄。

    所以第三回合下来,小李活的机率是50%*30%(c1)+35%*30%(d1)+17.5%*30%(e1)+17.5%*70%*50%(e4)=36.875%,小黄活的机率是30%*50%(a1)+50%*70%*50%(c3)+17.5%*70%(e2)=44.75%

    第四回合(e4,出现概率17.5%*70%*50%=6.125%)只有一种情况:
    f.剩下小李和小黄(e4, 17.5%*70%*50%=6.125%),小李先开枪,两种结果
    f1, 30%机会打中,只剩下小李。
    f2, 70%机会没打中,轮到小黄,两种结果:
    f3, 50%机会打中,只剩下小黄。
    f4, 50%机会没打中,剩下小李和小黄。

    所以第四回合下来,小李活的机率是50%*30%(c1)+35%*30%(d1)+17.5%*30%(e1)+6.125%*30%(f1)+6.125%*70%*50%(f4)=34.73125%,小黄活的机率是30%*50%(a1)+50%*70%*50%(c3)+17.5%*70%*50%(e3)+6.125%*70%(f2)=42.9125%

    第五回合。。。

    第六回合。。。

    理论上,小李和小黄可以打无穷多个回合,最后小李和小黄活的机率各是一个收敛的等比数列:
    小李活的概率是50%30%(c1)+35%*30%(d1)+50%(70%50)*30%(e1)+50%(70%50)^2*30%(f1)+50%(70%50%)^3*30%(g1)+…+50%(70%50%)^n*30%+50%(70%50%)^(n+1)= 33.5769%
    小黄活的概率是30%*50%(a1)+50%
    (70%50%)(c3)+50%(70%50%)^2(e3)+50%(70%50%)^3(f3)+…+50%(70%50%)^n+50%(70%*50%)^n*70%=41.923%

    最后整个事件中三人活的机率分别是小李33.5769%,小黄41.923%,小林24.5%.

    小林不可能出现在第三回合以后。。。这就是枪打出头鸟吧。。。


    今天看到另外一种策略。

    第一回合,小李开枪,对天开枪。然后小黄开枪,必打小林。
    a, 50%, 小林死。b.50%,没打中,小林开枪,必打小黄,小黄死。
    这样,第一回合小李活的概率是100%,小黄和小林各是50%。

    第二回合,
    a, (50%)剩下小李和小黄。小李开枪。
    a1,(50%*70%), 没打中。小黄开枪。
    c1, (50%*70%*50%),打中,结束. c2,(50%*70%*50%),没打中,继续。
    a2, (50%*30%),打中,结束。
    b, (50%)剩下小李和小林。小李开枪。
    b1,(50%*70%), 没打中。小林开枪,结束
    b2, (50%*30%),打中,结束。

    第三回合(c2)
    小李开枪。
    d1,(c2*70%), 没打中。小黄开枪。
    e1, (c2*70%*50%),打中,结束. e2,(c2*70%*50%),没打中,继续。
    d2, (c2*30%), 打中。结束。

    第四回合(e2)
    小李开枪。
    d1,(e2*70%), 没打中。小黄开枪。
    f1, (e2*70%*50%),打中,结束. f2,(e2*70%*50%),没打中,继续。
    g2, (e2*30%), 打中。结束。

    ….

    所以最后三个存活机率分别是:

    小李是a2(50%30%)+b2(50%*30%)+d2(50%*70%*50%*30%)+g2(50%(70%50%*30%)^2)+。。。=35.865%

    小黄是c1(50%*70%*50%)+e1(50%*70%*50%*70%*50%)+f1(50%(70%*50%)^2)+…=26.923%

    小林是b1: 50%*70%=35%

    无疑,这个策略比前一个策略对小李有利。

    龚文
    麻烦死了。。多开几枪就都死了。

  • 2007-03-15-12个球称重问题

    一个很古老的问题:

    12个球,大小同,其中一个重量不同。现有一个天平(没有砝码),要用这个天平称3次找出这个不同重量的球,如何称?

    答案如下:

    将十二个球编号为1-12号。

    **将1-4号放在天平左边,5-8号放在右边。

    有三种结果:

    一.平衡。说明有问题的是9-12号。
    **把1-3放在左边,9-11放在右边。
    有三种结果:
    1.平衡。说明12号有问题。
    **把1号放在左边,12号放右边。
    左重则12号轻了,右重则12号重了。不可能平衡。
    2.左重。说明9-11中有一个球轻了。
    **把9号放在左边,10号放在右边。
    左重则10号轻了,右重则9号轻了,平衡则11号轻了。
    3.右重。说明9-11中有一个球重了。
    **把9号放在左边,10号放在右边。
    左重则9号重了,右重则10号重了,平衡则11号重了。
    二。左重。说明有问题的是1-8号。
    **把1,5-7放在左边,8-11放在右边。
    有三种结果:
    1.平衡。说明2-4中有一个球重了。
    **把2号放在左边,3号放在右边。
    左重则2号重了,右重则3号重了,平衡则4号重了。
    2.左重。说明1号重了,或者8号轻了。
    **1号放在左边,2号放在右边。
    左重则1号重了,平衡则8号轻了。不可能右重。
    3.右重。说明5-7号有一个球轻了。
    **把5号放在左边,6号放在右边。
    左重则6号轻了,右重则5号轻了,平衡则7号轻了。
    三。右重。说明有问题的是1-8号。
    **把1,5-7放在左边,8-11放在右边。
    有三种结果:
    1.平衡。说明2-4中有一个球轻了。
    **把2号放在左边,3号放在右边。
    左重则3号轻了,右重则1号轻了,平衡则4号轻了。
    2.右重。说明1号轻了,或者8号重了。
    **1号放在左边,2号放在右边。
    左重则1号轻了,平衡则8号重了。不可能右重。
    3.左重。说明5-7号有一球重了。
    **把5号放在左边,6号放在右边。
    左重则5号重了,右重则6号重了,平衡则7号重了。

  • 2006-09-06-智力题

    S先生、P先生、Q先生他们知道桌子的抽屉里有16张扑克牌:红桃A、Q、4 黑桃J、8、4、2、7、3 草花K、Q、5、4、6 方块A、5。约翰教授从这16张牌中挑出一张牌来,并把这张牌的点数告诉 P先生,把这张牌的花色告诉Q先生。

    这时,约翰教授问P先生和Q 先生:你们能从已知的点数或花色中推知这张牌是什么牌吗?
    于是,S先生听到如下的对话:P先生:我不知道这张牌。

    Q先生:我知道你不知道这张牌。

    P先生:现在我知道这张牌了。

    Q先生:我也知道了。

    听罢以上的对话,S先生想了一想之后,就正确地推出这张牌是什么牌。

    请问:这张牌是什么牌?

    我公布答案:
    P先生知道点数,Q先生知道花色

    P先生:我不知道这张牌。 这说明这张牌有两种或以上花色,除去只有一种花色的牌剩下 A,4,5,Q

    Q先生:我知道你不知道这张牌。 这说明不会是黑桃和草花, 因为如果是黑桃和草花,Q就不能肯定P不知道这张牌.而红桃和方块中所有的牌都是有两个花色,所以Q可以肯定P不知道那张牌.
    P听了Q的话就知道那张的牌的花色是红桃或者方块.

    这个时候,P说知道哪张牌了,这就说明这张牌不是A.(如果是A,他就不能确实是红桃A还是方块A). 现在只剩下红桃4,红桃Q,方块5. 如果Q看到的是红桃,他就不知道是红桃4还是红桃Q, 所以Q看到的是方块.
    答案就是方块5了.