インデックスを計算するだけにするか、のいずれかです。示しますが、後者の方法を取っています。インデックスそのものと言えます。インデックスとは別の存在とは言えません。Node数も決まります。Node数は必ずしも決まっていません。2項Treeモデルの中で、特定のグループのものをモデル化しています。再結合するもののみを対象としています。取り扱えるクラスを置いています。読者の方に見て頂き、フィードバックを頂ければうれしいです。ここでの説明では、係数が定数のバージョンだけを使います。構築する方法には、さらにいくつかの選択肢があります。従って、大半の実装は派生クラスに任されています。このクラスはベースクラスとして、クラス全体で共通の機能を提供しています。enum変数は、古いインターフェースに対応するメソッドを代替するものです。いった型のメンバー変数を使ったでしょう。コンパイラーが標準に準拠していなかった時代の遺物と言えます。(スタート日は0と仮定。これも内生的な定数)、3および離散時間のステップ数を取ります。いくつかのシンプルな事前計算を行いメンバー変数の値を設定します。時点でのそれを計算しています)。これらの計算結果をそれぞれ各メンバー変数に代入します。インスタンスが、定数係数の確率過程なのかどうか、確認する方法がありません。期間で計算し、それを他の期間にも援用していいのか、疑問。StochasticProcessクラスに対して、クラス階層上並列したものになるでしょう。すると、悪い意味での多重継承が発生します。“定数係数Black-ScholesProcessクラス”を宣言するとすれば、それは“定数係数Processクラス”と“Black-ScholesProcessクラス”の両方から継承する事になります。StochasticProcessクラスの型を(定数係数型に)制限して必要な型だけを取るようにする事はできません。実行時にその型をチェックする事もできません。いくつかの離散時間の時点をサンプルとして取りだし、チェックはできるでしょうが、他の時点もすべて定数である事を保証するものではありません。(StochasticProcessクラスの型を間違えないようにする為に)残っているひとつの選択肢としては、この動作を文書化しておいて、ユーザーの方に間違った使い方をしないようにしてもらう事です。コンストラクターに、StochasticProcessインスタンスを取らずに、定数係数を引数として取る事です(現時点では過去のバージョンとの互換性の為、そうする事を避けていますが、将来のバージョンアップの際に検討可能です)。これはユーザーの方にコンストラクターを呼び出す都度、Processクラスから係数を取りだす作業を義務付けることになります。いつものように、バランスを考えて判断する必要があります。最後の2つのメソッドは、Treeの構造を定義しています。Nodeが1つと仮定しています。あると仮定している事と合わせて考えると、若干の問題に気付きました。3つ持たせることができなくなり、その結果、差分による近似でデルタやガンマを計算する方法が取れなくなりました。幸いなことに、この問題は過去のバージョンとの互換性を失わせる事なく対応可能かと思います。ユーザーの方がそれを実装しようとするなら、コンストラクターに追加の引数を加えるだけで、上記の仮定を緩める事ができ、そのテクニックを使えるようにできるでしょう。間の接合を記述しています。