pure public GetName: () ==> StockIdentifier
GetName() == return name;
pure public GetCurrentValue : () ==> StockValue
GetCurrentValue() == returnhd valueHistory;
pure public GetValueHistory : () ==> seqof StockValue
GetValueHistory() == ( return valueHistory;
);
InitialRateOfChange : (StockValue) ==> RateOfChange
InitialRateOfChange(sv) == let r = MATH`rand(21) mod 3 in return if(sv > 0) then cases r:
0 -> <positive>,
1 -> <negative>,
2 -> <constant> end else cases r:
0 -> <positive>,
1 -> <positive>,
2 -> <constant> end;
NextRateOfChange : RateOfChange * StockValue ==> RateOfChange
NextRateOfChange(roc,sv) == let r = MATH`rand(10),
other = MakelistFromSet({x | x : RateOfChange & x <> roc and (x=<negative> => sv > 0) }) in return if r >= 0 and r <= 7 and (roc = <negative> => sv > 0) then roc else
other((MATH`rand(20) modlen other) + 1);
pure MakelistFromSet : setof RateOfChange ==> seqof RateOfChange
MakelistFromSet(roc) == return if( card roc > 0) then let r inset roc in
[r] ^ MakelistFromSet(roc \ {r}) else []
end Stock
¤ Dauer der Verarbeitung: 0.11 Sekunden
(vorverarbeitet)
¤
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung ist noch experimentell.