Documentation

Actus.Contract.PAM

def Actus.Contract.PAM.ipacAccr {α : Type} [Amount α] (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
α

Interest accrual Ipac_{t-} + Y(Sd_{t-}, t)·Ipnr_{t-}·Nt_{t-}.

Equations
Instances For
    def Actus.Contract.PAM.feacNext {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
    α

    Fee accrual Feac_{t+} (§7.1). The FEB_N branch is exact; the absolute (FEB_A) branch's proration over the fee period is omitted because the state does not carry the fee-period boundaries t^{FP±}.

    Equations
    Instances For
      def Actus.Contract.PAM.stf_AD {α : Type} [Amount α] (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
      Equations
      • One or more equations did not get rendered due to their size.
      Instances For
        def Actus.Contract.PAM.stf_IED {α : Type} [Amount α] (ct : Terms α) (t : Protocol.Time) (s : State α) :
        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def Actus.Contract.PAM.stf_MD {α : Type} [Amount α] (t : Protocol.Time) (s : State α) :
          Equations
          Instances For
            def Actus.Contract.PAM.stf_PP {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              def Actus.Contract.PAM.stf_PY {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def Actus.Contract.PAM.stf_FP {α : Type} [Amount α] (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  def Actus.Contract.PAM.stf_PRD {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    def Actus.Contract.PAM.stf_TD {α : Type} [Amount α] (t : Protocol.Time) (s : State α) :
                    Equations
                    Instances For
                      def Actus.Contract.PAM.stf_IP {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                      Equations
                      • One or more equations did not get rendered due to their size.
                      Instances For
                        def Actus.Contract.PAM.stf_IPCI {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                        Equations
                        • One or more equations did not get rendered due to their size.
                        Instances For
                          def Actus.Contract.PAM.stf_RR {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :

                          Rate reset: Ipnr_{t+} = clamp_{[RRLF,RRLC]}(Ipnr+Δr) with Δr = clamp_{[RRPF,RRPC]}(Oʳᶠ(RRMO,t)·RRMLT + RRSP − Ipnr). Absent caps / floors impose no bound (clampHi/clampLo with none).

                          Equations
                          • One or more equations did not get rendered due to their size.
                          Instances For
                            def Actus.Contract.PAM.stf_RRF {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              def Actus.Contract.PAM.stf_SC {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :

                              Scaling (§7.1): Nsc/Isc are reset to Oʳᶠ(SCMO,t)/SCIED for the dimensions the SCEF code scales (notional and/or interest).

                              Equations
                              • One or more equations did not get rendered due to their size.
                              Instances For
                                def Actus.Contract.PAM.stf_CE {α : Type} [Amount α] (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :

                                Credit event uses STF_AD_PAM().

                                Equations
                                Instances For
                                  def Actus.Contract.PAM.stf {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (ev : Protocol.EventType) (t : Protocol.Time) (s : State α) :

                                  STF dispatcher by event type (events not in the PAM schedule just advance the status date).

                                  Equations
                                  Instances For
                                    Equations
                                    Instances For
                                      def Actus.Contract.PAM.pof_IED {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) :
                                      α
                                      Equations
                                      Instances For
                                        def Actus.Contract.PAM.pof_MD {α : Type} [Amount α] (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                        α
                                        Equations
                                        Instances For
                                          Equations
                                          Instances For
                                            def Actus.Contract.PAM.pof_PY {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                            α
                                            Equations
                                            • One or more equations did not get rendered due to their size.
                                            Instances For
                                              def Actus.Contract.PAM.pof_FP {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                              α
                                              Equations
                                              • One or more equations did not get rendered due to their size.
                                              Instances For
                                                def Actus.Contract.PAM.pof_PRD {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                                α
                                                Equations
                                                Instances For
                                                  def Actus.Contract.PAM.pof_TD {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                                  α
                                                  Equations
                                                  Instances For
                                                    def Actus.Contract.PAM.pof_IP {α : Type} [Amount α] (_ct : Terms α) (rf : RiskFactorEnv α) (t : Protocol.Time) (s : State α) :
                                                    α
                                                    Equations
                                                    Instances For
                                                      def Actus.Contract.PAM.init {α : Type} [Amount α] (ct : Terms α) (md t₀ : Protocol.Time) :

                                                      Initial state per the §7.1 initialization table. md is the maturity date on the Time axis (caller supplies it from genSchedule); t₀ is the status date.

                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        inductive Actus.Contract.PAM.Step {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) :
                                                        State αState αType

                                                        One-step state-transition relation for PAM: Step ct rf s s' holds when the contract advances from s to s' by one scheduled event at time t ≥ Sd. Each constructor's target is the corresponding functional stf_*.

                                                        Instances For

                                                          One-step state-transition relation for PAM: Step ct rf s s' holds when the contract advances from s to s' by one scheduled event at time t ≥ Sd. Each constructor's target is the corresponding functional stf_*.

                                                          Equations
                                                          • One or more equations did not get rendered due to their size.
                                                          Instances For
                                                            @[reducible, inline]
                                                            abbrev Actus.Contract.PAM.Trace {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) :
                                                            State αState αType

                                                            Execution trace: zero-or-more PAM steps.

                                                            Equations
                                                            Instances For
                                                              def Actus.Contract.PAM.getCashflows {α : Type} [Amount α] (ct : Terms α) (rf : RiskFactorEnv α) {s s' : State α} :
                                                              Trace ct rf s s'List (Protocol.Event × α)

                                                              Collect cashflows along a full execution trace.

                                                              Equations
                                                              Instances For

                                                                Witness that PAM satisfies the abstract StateTransition interface.

                                                                Equations
                                                                • One or more equations did not get rendered due to their size.
                                                                Instances For