src/main/java/com/billybyte/marketdata/MarketDataComLib.java
public static TreeMap<Long, TreeMap<BigDecimal, SecDef>> sortSecDefsByExpiryStrike(String right,List<SecDef> sdList){
		TreeMap<Long, TreeMap<BigDecimal, SecDef>> ret = new TreeMap<Long, TreeMap<BigDecimal,SecDef>>();
		for(int i = 0;i<sdList.size();i++){
			SecDef sd = sdList.get(i);
			if(sd.getRight().compareTo(right)==0){
				updateStrikeSdTreeMap(sd,ret);
			}else{
				continue;
			}
		}
		return ret;
	}
/**
	 * 
	 * @param right - "C" or "P", depending if you want calls or puts
	 * @param sdList - list of options SecDefs for a particular underlying
	 * @return }@code TreeMap<Long, TreeMap<BigDecimal, SecDef>>} which represents all of the SecDefs for these options
	 * 			sorted by expiry, and then strike 
	 */
@param right - "C" or "P", depending if you want calls or puts
@param sdList - list of options SecDefs for a particular underlying
@return }@code TreeMap>} which represents all of the SecDefs for these options
sorted by expiry, and then strike
@param right - " C " or " P " depending if you want calls or puts @param sdList - list of options SecDefs for a particular underlying @return } @code TreeMap > } which represents all of the SecDefs for these options sorted by expiry and then strike
public static TreeMap<Long, TreeMap<BigDecimal, SecDef>> sortSecDefsByExpiryStrike(String right,List<SecDef> sdList){
		TreeMap<Long, TreeMap<BigDecimal, SecDef>> ret = new TreeMap<Long, TreeMap<BigDecimal,SecDef>>();
		for(int i = 0;i<sdList.size();i++){
			SecDef sd = sdList.get(i);
			if(sd.getRight().compareTo(right)==0){
				updateStrikeSdTreeMap(sd,ret);
			}else{
				continue;
			}
		}
		return ret;
	}
public static TreeMap < Long , TreeMap < BigDecimal , SecDef > > sortSecDefsByExpiryStrike ( String right , List < SecDef > sdList ) { TreeMap < Long , TreeMap < BigDecimal , SecDef > > ret = new TreeMap < Long , TreeMap < BigDecimal , SecDef > > ( ) ; for ( int i = 0 ; i < sdList . size ( ) ; i ++ ) { SecDef sd = sdList . get ( i ) ; if ( sd . getRight ( ) . compareTo ( right ) == 0 ) { updateStrikeSdTreeMap ( sd , ret ) ; } else { continue ; } } return ret ; }
@param right - "C" or "P", depending if you want calls or puts
 @param sdList - list of options SecDefs for a particular underlying
 @return }@code TreeMap<Long, TreeMap<BigDecimal, SecDef>>} which represents all of the SecDefs for these options
                      sorted by expiry, and then strike
@param right - " C " or " P " depending if you want calls or puts @param sdList - list of options SecDefs for a particular underlying @return } @code TreeMap<Long TreeMap<BigDecimal SecDef >> } which represents all of the SecDefs for these options sorted by expiry and then strike