Add new round and behavior with API integration #5
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This pull request introduces a new
EvaluationRound
designed to enhance the market trend analysis capabilities of our learning ABCI agents. By comparing current and historical prices, the agents can make more informed decisions based on market trends. The implementation extends across multiple components of the agent framework and introduces a new API integration.Changes
The changes include modifications to several files across different folders to integrate the new business logic effectively:
Modified Files
skill/learning_abci/:
fsm_specification.yaml
round.py
behaviours.py
module.py
payload.py
skill.yaml
agents/:
aea-config.yaml
services/:
service.yaml
skills/learning_chained_abci/:
fsm_specification.yaml
module.py
skill.yaml
API Integration
Implemented a new API call
coingecko_pricehistorydata_specs
usingApiSpecs
to fetch market data from CoinGecko (https://api.coingecko.com/api/v3/coins/autonolas/market_chart
). This integration helps in fetching historical price data essential for the evaluation round.New Classes
EvaluationBehaviour
inbehaviours.py
EvaluationRound
inround.py
EvaluationPayload
inpayload.py
Coingeckopricehistorydataspecs
inmodule.py
Impact
The introduction of
EvaluationRound
allows agents to assess market conditions more accurately by reaching a consensus on the current price and comparing it with historical data. This strategic enhancement supports better decision-making processes in market-sensitive environments.