Alea
Alea

Reputation: 121

NETLOGO: Storing and using the value of a variable in the last 3 ticks

I am trying to model a stock market. I am trying to give agents a certain kind of behaviour to base their prediction of the prices on. So basically, every agent predicts the price of the share. In the Setup procedure, a random predicted price is assigned to each agent. As the time passes, the predicted price is supposed to be calculated as follows: total of predicted price of the last 3 periods / 3

I don't know how to approach this issue. I tried using the last command but it does not work. I was thinking about making a sort of vector but I couldn't do so. Any leads?

This is what I have tried so far:

ask turtles [
set pre-price (pre-price + last [pre-price] of turtles + last [last [pre-price] of turtles] of turtles) / 3 ]
end

The last command does not work as I want it to work because I have tried to manually calculate the results and they don't reconcile with this command. Any idea on how to go about it?

Thank you!

Upvotes: 1

Views: 299

Answers (1)

mattsap
mattsap

Reputation: 3806

This is actually a very interesting bug.

The issue is that inside your turtle call, you assume all the turtles "pre-price" is static; however, with each agent, they are assigning the variable.

I'd suggest to introduce another variable which explicitly stores the pre-prices for each tick (using a matrix/nested list)

Upvotes: 1

Related Questions