//@Name:Av. NAV discount //@Description:Displays the average value of an investment trust's premium/discount to NAV //@Returns:Number var period = 250; function init(status) { if (status == Loading || status == Editing) { period = storage.getAt(0); } if (status == Adding || status == Editing) { dlg = new Dialog((status==Adding?"Add":"Edit")+" column", 150, 45); dlg.addOkButton(); dlg.addCancelButton(); dlg.addIntEdit("INT1",8,-1,-1,-1,"","Period",period,2,5000); if (dlg.show()==Dialog.Cancel) return false; period = dlg.getValue("INT1"); storage.setAt(0, period); } setTitle("NAV % of "+period+" day av."); } function getVal(share) { var data = share.getPriceArray(); try { var assShares = share.getAssocShares(); } catch(e) { return; } var epic var NAV; for (var i=0;i4 && epic[epic.length-4] == "-" && epic[epic.length-3] == "N" && epic[epic.length-2] == "A" && epic[epic.length-1] == "V") NAV = assShares[i]; } if (NAV == undefined) return; var ma1 = new MA(period); var avDis; var navVal; for (i=Math.max(data.length-period,0);i