}
@Override
public LastPrice lastPrice() {
final Session current = session();
if (!current.isSettled().isNull() && current.isSettled().value()) {
return new LastPriceImpl(Source.SETTLE, current.settle());
}
if(!current.close().isNull()) {
return new LastPriceImpl(Source.LAST_TRADE, current.close());
}
final SessionData previous = sessionSet().session(Type.DEFAULT_PREVIOUS);
if (!previous.isSettled().isNull() && previous.isSettled().value()) {