package com.activequant.domainmodel; /** * Enumeration about time frames. * Resolution in minutes. * New timeframes can be added on request, just open a support ticket. * * @author GhostRider * */ public enum TimeFrame { EOD(1440), MINUTES_1(1), MINUTES_2(2), MINUTES_3(3), MINUTES_5(5), MINUTES_10(10), MINUTES_15(15), MINUTES_30(30), HOURS_1(60), HOURS_2(120),HOURS_4(240), RAW(0); private int minutes; private TimeFrame(int minutes) { this.minutes = minutes; } public int getMinutes() { return minutes; } public long getNanoseconds(){ return minutes * 60l * 1000l * 1000l * 1000l; } public static TimeFrame getTimeFrame(int minutes) { switch(minutes) { case 10: return TimeFrame.MINUTES_10; case 30: return TimeFrame.MINUTES_30; case 60: return TimeFrame.HOURS_1; case 5: return TimeFrame.MINUTES_5; case 3: return TimeFrame.MINUTES_3; case 2: return TimeFrame.MINUTES_2; } return null; } }