⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 trendstockrecommendationservice.java

📁 source code of voyager yellow page
💻 JAVA
字号:
/*
 * RECURSION PROPRIETARY-NOT TO BE DISCLOSED OUTSIDE RECURSION, INC.
 */

/**
 * Created by twheeler on Mar 8, 2007 at 4:06:53 PM
 */
package examples.yellowpages;

import com.recursionsw.ve.Namespace;
import com.recursionsw.ve.NamespaceException;
import com.recursionsw.ve.StartupException;
import com.recursionsw.ve.Voyager;
import com.recursionsw.ve.yp.IYellowPages;
import com.recursionsw.ve.yp.ServiceDescriptionExistsException;
import com.recursionsw.ve.yp.ServiceResolutionException;
import com.recursionsw.ve.yp.YellowPages;
import com.recursionsw.ve.yp.YellowPagesException;
import com.recursionsw.ve.yp.registry.ServiceDescription;

/**
 * 
 *
 * @author twheeler
 */
public class TrendStockRecommendationService extends AbstractStockRecommendationService
{
  static TrendStockRecommendationService recommendationService; 
  
  public TrendStockRecommendationService(IExchangeBroker exchangeBroker)
  {
    super(exchangeBroker);
  }
  
  public int getRecommendation(String ticker, String exchange)
  {
    StockData data = getStockDataFor(ticker, exchange);
    int increases = 0;
    int decreases = 0;
    
    double[] closingPrices = data.getClosingPrices();
    double closingPrice = closingPrices[0];
    for(int i = 1; i < closingPrices.length; i++)
    {
      if(closingPrices[i] > closingPrice)
        increases++;
      else
        decreases++;
    }
    if(increases > decreases)
      return BUY_LONG;
    else if(increases < decreases)
      return BUY_SHORT;
    return NO_TRADE;
  }

  
  public static void main(String[] args)
  {
    String serverUrl = "8002";
    String exchangeBrokerUrl = "8000"; 
    if(args.length > 0)
    {
      serverUrl = args[0];
      exchangeBrokerUrl = args[1];
    }

    try
    {
      Voyager.startup(serverUrl);
      IExchangeBroker exchangeBroker = (IExchangeBroker) Namespace.lookup(exchangeBrokerUrl + "/ExchangeBroker");
      recommendationService = new TrendStockRecommendationService(exchangeBroker);
      IYellowPages yellowPages = YellowPages.getInstance(exchangeBrokerUrl);
      ServiceDescription serviceDescription = new ServiceDescription("StockRecommendationService", recommendationService);
      yellowPages.registerService(serviceDescription);
    }
    catch (StartupException e)
    {
      System.out.println("Exception starting Voyager Edge: " + e.getMessage());
      System.exit(1);
    }
    catch (NamespaceException e)
    {
      System.out.println("Exception binding TrendStockRecommendationService: " + e.getMessage());
      System.exit(1);
    }
    catch (ServiceDescriptionExistsException e)
    {
      System.out.println("Exception registering service with Yellow Pages: " + e.getMessage());
      System.exit(1);
    }
    catch (ServiceResolutionException e)
    {
      System.out.println("Exception creating service resolver: " + e.getMessage());
      System.exit(1);
    }
    catch (YellowPagesException e)
    {
      System.out.println("Exception obtaining Yellow Pages at " + exchangeBrokerUrl + ":" + e.getCause().getMessage());
      System.exit(1);
    }
    
    System.out.println("TrendStockRecommendationService started on " + serverUrl);
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -