Skip to content

📦 SQA::Strategy::KBS

Source Information

Defined in: lib/sqa/strategy/kbs_strategy.rb:50

Inherits from: Object

🏭 Class Methods

.trade(vector)

Main strategy interface - compatible with SQA::Strategy framework

Source Location

lib/sqa/strategy/kbs_strategy.rb:62


🔨 Instance Methods

#kb()

Returns the value of attribute kb.

Source Location

lib/sqa/strategy/kbs_strategy.rb:51


#default_rules_loaded()

Returns the value of attribute default_rules_loaded.

Source Location

lib/sqa/strategy/kbs_strategy.rb:51


#initialize(load_defaults: = true)

Returns

Type: KBS

a new instance of KBS

Source Location

lib/sqa/strategy/kbs_strategy.rb:53


#execute(vector)

Execute strategy with given market data

Source Location

lib/sqa/strategy/kbs_strategy.rb:68


#add_rule(name, &block)

Add a custom trading rule

Example: add_rule :buy_dip do on :rsi, { value: ->(v) { v < 30 } } on :macd, { signal: :bullish } perform { kb.assert(:signal, { action: :buy, confidence: :high }) } end

Note: Use kb.assert in perform blocks, not just assert

Source Location

lib/sqa/strategy/kbs_strategy.rb:92


#assert_fact(type, attributes = {})

Assert a fact into working memory

Source Location

lib/sqa/strategy/kbs_strategy.rb:105


#query_facts(type, pattern = {})

Query facts from working memory

Source Location

lib/sqa/strategy/kbs_strategy.rb:110


Print current working memory (for debugging)

Source Location

lib/sqa/strategy/kbs_strategy.rb:115


Print all rules (for debugging)

Source Location

lib/sqa/strategy/kbs_strategy.rb:120


📝 Attributes

👁️ kb read-only

Returns the value of attribute kb.

👁️ default_rules_loaded read-only

Returns the value of attribute default_rules_loaded.