Simple cryptsy market price observer HOW?

0

I am trying to use the cryptsy's API to get the current price of doge. This is my code.

public class Main {

   static Market [] markets;

   public static void main (String [] args) throws CryptsyException, InterruptedException{

      Cryptsy cryptsy = new Cryptsy();
      cryptsy.setAuthKeys("<authkey>", "<authpass>");


      markets = cryptsy.getMarkets();
      while(true){
         for(Market market : markets) {
            DecimalFormat df = new DecimalFormat("#.########");
            if(market.label.equals("DOGE/BTC"))
               System.out.println(market.label + "   " + df.format(market.last_trade) + "   " + market.current_volume );
         }
      TimeUnit.SECONDS.sleep(5);
      }   
   }
}

the problem is that the price get updated too rear (30 mins or something) and only if I restart my program. Anyone to know hot to get the current price?

user1761818

Posted 2014-01-19T11:02:19.260

Reputation: 477

2This question appears to be off-topic because it is a programming question.Stéphane Gimenez 2014-01-19T11:43:39.007

Agree - ought to be moved to Stack Overflow, where I believe the chances for it to be answered are way higher.Joe Pineda 2014-01-19T14:08:07.280

Answers

1

Your problem is that you only get the market data once, then keep displaying the same values. Move your call to cryptsy.getMarkets() inside your while loop, like so:

public static void main (String [] args) throws CryptsyException, InterruptedException{

      Cryptsy cryptsy = new Cryptsy();
      cryptsy.setAuthKeys("<authkey>", "<authpass>");

      while(true){
         markets = cryptsy.getMarkets();
         for(Market market : markets) {
            DecimalFormat df = new DecimalFormat("#.########");
            if(market.label.equals("DOGE/BTC"))
               System.out.println(market.label + "   " + df.format(market.last_trade) + "   " + market.current_volume );
         }
         TimeUnit.SECONDS.sleep(5);
      }   
   }

Eric Petroelje

Posted 2014-01-19T11:02:19.260

Reputation: 113