Seasonal ARIMA Modelling in R I have monthly price data for a commodity from 2007 to 2017. You can find it in the following link:
https://drive.google.com/open?id=0BxRCOgKAL4itcUZlOExrUmVOanc
I need to forecast it using Seasonal ARIMA model in R for next year. When I am using auto.arima function, it suggests me the best model as ARIMA(0,1,1) instead of ARIMA(p,d,q)(P,D,Q)12. The seasonal part of the model(P,D,Q) is somehow missing. I do not know why is this happening. Is my data not seasonal or is there something wrong in my code. Also the forecast value given by the model is constant for the next months which is insignificant. Please help! 
Here is the code:
data <- read.delim("C:/Users/hp/Desktop/heckyl/forecasting model/Soybean_Prices.txt", header=F)
View(data)
summary(data)
summary(data)
ts.data = ts(data, frequency=12, start=c(2007,6))
ts.data
plot(ts.data)

dim(as.matrix(ts.data))
################################################################################

# Training and Testing Dataset
data.train = window(ts.data, start = c(2007,6), end = c(2013,12)) 
plot(data.train)
dim(as.matrix(data.train))
data.test = window(ts.data, start = c(2014,1))
plot(data.test)
dim(as.matrix(data.test))
################################################################################

# Developing an SARIMA model and Analysis of Model
library(forecast)
arima1 = auto.arima(data.train, trace=FALSE, test="kpss",  ic="aic")
summary(arima1)
confint(arima1)

# Residual Diagonostics
plot.ts(arima1$residuals)
Box.test(arima1$residuals,lag=20, type="Ljung-Box")
acf(arima1$residuals, lag.max=24, main="ACF of the Model")
Box.test(arima1$residuals^2,lag=20, type="Ljung-Box")
library(tseries)
jarque.bera.test(arima1$residuals)

arima1.forecast= forecast.Arima(arima1, h=41)
arima1.forecast
plot(arima1.forecast, xlab="Years", ylab="Price for Soybean")

library(TSPred)
plotarimapred(data.test, arima1, xlim=c(2014, 2017), range.percent = 0.05)
accuracy(arima1.forecast, data.test)

 A: You can "force" seasonality by setting D=1 or adding regressors. If you think there is more complex seasonality you may consider using Fourier terms? See this link complex seasonality Hyndman
A: Try to use this command rather the one you are using for getting the parameters of ARIMA.
arima1 = auto.arima(data.train, trace=FALSE, test="kpss", ic="aic", 
                    stepwise=FALSE, approximation=FALSE)

Sometimes using these commands gives the best model.
A: your data suggests the following model
with  . The actual , fit and forecast is here  . The data suggests a level shift (visually obvious) and two statically significant seasonal indicators (April and September )and a few anomalies (6). I used R to do the analysis. Unfortunately auto.arima makes some critical assumptions about model form i.e. no level shifts and no seasonal pulses/indicators and of course no anomalies . It is always good to read the fine print.
The fact that there are only two months of the year that exhibit "seasonality" goes to explain why auto.arima delivered a model that had a "seasonal component somehow missing". Even a broken clock is right twice a day and in this case the clock was "nearly right" insofar as that there is no substantive auto-projective seasonal component/effect just a deterministic component/effect for the months of April and September.
6 period out forecast ...

A: maybe you can force the function auto.arima() to return the seasonal model by using like this
auto.arima(database,seasonal=T)

