return v;

       }

}

В теле программы стратегия поведения рационально-шумовых агентов описана следующим образом:

public class RationalStrategy implements Strategy {

       private static final RationalStrategy INSTANCE = new RationalStrategy();

       public static RationalStrategy getInstance() {

               return INSTANCE;

       }

       private RationalStrategy() {

       }

       public double getPrice(Trader trader, Regulator regulator, int v) {

               double p=0.0;

               if (v>0){

                       if(regulator. asks. keySet().size()!=0){

                               if(trader. cash>1.01*regulator. asks. keySet().iterator().next().getPrice())

                                               p=1.01*regulator. asks. keySet().iterator().next().getPrice();}

НЕ нашли? Не то? Что вы ищете?

                       else p=regulator. average_Price;}

               if (v<0)

                       if(regulator. bids. keySet().size()!=0)

                       p=0.99*regulator. bids. keySet().iterator().next().getPrice();

                       else p=regulator. average_Price;

               return p;

       }

       public int getVolume(Trader trader, Regulator regulator){

               int v=0;

               if (regulator. averagePrice. get(regulator. averagePrice. size()-2)==regulator. average_Price)

                        v=1;

               if (regulator. averagePrice. get(regulator. averagePrice. size()-1)>regulator. averagePrice. get(regulator. averagePrice. size()-2))

                       v=1;

               if (regulator. averagePrice. get(regulator. averagePrice. size()-1)<regulator. averagePrice. get(regulator. averagePrice. size()-2) && trader. volume>0)

                       v=-1;

                               return v;

       }

}

В теле программы стратегия поведения стабилизирующих агентов описана следующим образом:

public class StabilityStrategy implements Strategy {

       private static final StabilityStrategy INSTANCE = new StabilityStrategy();

       

public static StabilityStrategy getInstance() {

               return INSTANCE;

       }

       

private StabilityStrategy() {

       }

       

public double getPrice(Trader trader, Regulator regulator, int v) {

               double p=0.0;

               if (v>0 && trader. cash>1.01*regulator. average_Price)

                       p=1.01*regulator. average_Price;

               if (v<0)

                       p=0.99*regulator. average_Price;

               return p;

       }

       

public int getVolume(Trader trader, Regulator regulator){

               int v=0;

               if (regulator. asks. size()>regulator. bids. size() && trader. volume>0)

                       v=-1;

               if (regulator. asks. size()<regulator. bids. size())

                       v=1;

               if (regulator. asks. size()==regulator. bids. size())

                       if (random()<=0.5)

                               v=1;

                       else {

                               if (trader. volume==0)

                                       v=0;

                               else v=-1;

                               }

               return v;

       }

}

Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8