Node org.unizone.finance.interest.YieldLinear

org.unizone.0.8540
Instance of TypeScriptInfo

Node dataValue
org.edgescript.TypeScriptInfo.prerequisiteParcelsList{}
org.edgescript.TypeScriptInfo.prerequisiteMethodsList{}
org.edgescript.TypeScriptInfo.script/** * WARNING: Not checked */ /* instance Collection[InstrumentTBill] tbills; instance Collection[InstrumentBond] bonds; constructor() { Yield:(); } Void setTBills(Collection[InstrumentTBill] tbills) { instance tbills = tbills; tbills.do(Void(InstrumentInterest i) {addNextSource(i)}); } Void setBonds(Collection[InstrumentBond] bonds) { instance bonds = bonds; bonds.do(Void(InstrumentInterest i) {addNextSource(i)}); } Collection[InstrumentTBill] tbills() { instance tbills; } Collection[InstrumentBond] bonds() { instance bonds; } Object preferredFrom(Condition condition) { if (condition.class == ConditionHistory) return Time{ConditionHistory{condition}.to}.addDays(-30); TimeBuffer:preferredFrom(condition); } TimeData createData(Time time, Symbol resolution) { Producer.report("Preparing " + toString() + " at " + time.toString); List[TimeData] tbillData = new List(TimeData); List[TimeData] bondData = new List(TimeData); external cond_history = time; Int i = 0; Real bid; while (i < instance tbills.size) { InstrumentTBill tbill = instance tbills.at(i); bid = tbill.aspectReal(#value); if (bid != null && bid != 0) { TimeData data = data.setAspect(#maturity, bond.aspectValue(#maturity)); data.setAspect(#coupon, bond.aspectValue(#coupon)); if (data.maturity.subtractDate(time) > 365) bondData.add(data); } i = i + 1; } Time lastTime; tbillData.do(Void(TimeData d) { if (lastTime == null' ' d.time > lastTime) lastTime = d.time; }); bondData.do(Void(TimeData d) { if (lastTime == null' ' d.time > lastTime) lastTime = d.time; }); YieldLinearData yData = new YieldLinearData(this, lastTime); if (!yData.formatCurve(tbillData, bondData)) return null; yData; } */
org.edgescript.TypeScriptInfo.defineTypeorg.unizone.finance.interest.YieldLinear
org.edgescript.TypeScriptInfo.prerequisiteScriptsList{}