SSブログ

謎の循環参照エラー [システムトレード]

可変ポジションシステムは、とりあえず信用金利部分とマクロ修正を残して出来上がったのですが、動作確認中に循環参照エラーの発生に悩まされています。
通常の状態ではエラーは生じないのですが、フィルタを特定の条件に設定すると、循環参照エラーが生じます。

具体的には、計算を開始する最初の行の特定セル(フィルタ用セル)の値を"0"にすると、循環参照エラーとなります。
このセルの値が0より大きい場合は、エラーは生じません。

通常、循環参照エラーは、特定セルを参照するセルが最終的にその特定セルに参照されると生じます。その場合、循環参照の起点となるセルには、計算式が入力されていることが普通です。
しかし、今回生じているエラーでは、そのセルに直接"0"を入力しても循環参照エラーが生じます。

そのセルを参照しているセルで、そのセルの値に応じて条件分岐されている場合は、起点となるセルの値によって循環参照が生じることがあるかもしれません。
しかし、参照先や参照元を調べて見ても、明確に条件分岐されているセルは見当たりません(もちろん、見落としの可能性が高いことは分かっています)。

循環参照のトレースを行ない、そこにリストアップされるセルを一つずつ順番に数値に置き換えて行き、それによって循環参照が解消されるかどうかを確認していくことで、循環参照の原因となっているセルを突き止めることができます。

リストアップされるセルの内容を数値に置き換えた時に、循環参照が解消されるなら、そのセルが循環参照を引き起こしていると考えられます。
循環参照に関係のないセルの場合は、内容を数値に置き換えても、循環参照は解消されません。

そうやって、最も怪しいセルを突き止めたのですが、そのセルをどのように修正しても(もちろん要件を満たすようにですが)、循環参照エラーは解消できません。
まったくもって、謎の循環参照エラーです。

システム的には、計算開始時にキャッシュポジション(フィルタの値が"0")であっても矛盾はないはずです。
すなわち、原因は計算式そのものにあることは明らかなのですが、昨日から丸一日以上掛かっても解決できていません。

この問題を解決しないことには、その先にある売り優先システム(逆張り2システム)と買い優先システム(その他のシステム)との融合は困難です。
キャッシュポジションという共通項を持つことで、これらの融合が可能になると考えています。

何にしましても、じっくりと腰を落ち着けて、これらの課題を解決していきたいと思います。


PS.10月に開通する光回線ですが、結局、マンションタイプでの契約になりそうです。ただし、NTT東日本の担当者の話によると、VDSLではなく光ケーブルタイプということになるそうです。
契約の有無に関わらずマンションの全室に光ケーブルを通し、それを使うかどうかは住民の判断に任されるようです。

ちなみに、ファミリータイプでの契約も不可能ではありませんが、その場合は光ケーブルを室外から導入しなければならず、更にはマンション退去時に引き込んだ光ケーブルを撤去しなければならない、等の制約があるとのことでした。

ところで、私はまったく身に覚えがなかったのですが、4年前にインターネットからBフレッツの申し込みをしていたらしく、それがあるためにマンションタイプの契約ができないので、以前の契約を解約して欲しいと言われました。

たぶん当時はすぐにでも居住地域に光回線が通ると思い、申し込みを行なったんだと考えますが、それにしてもその後4年間も実行されなかった契約が生きているとは驚きでした。
その辺のシステムは何とかして欲しいものです。なお、契約のキャンセルは116から口頭で簡単に行なうことができました。

nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

Facebook コメント

トラックバック 0

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。