If your sample size was (very) small, the price coefficient may not be statistically significant. It may also not be statistically significant if most people choose the nobuy option (you may want to check).
You can still use the non-significant coefficient for price, but it will be unreliable so your sample size estimate will also be unreliable. But the parameter estimate is still your best guess for the parameter value. To account for unreliability of priors, Bayesian priors are useful as you indicate, which uses a wide range of price coefficients are priors to optimise over. My only concern would be positive values for the price coefficient being drawn from the prior distribution. \
For example, if you use b1[(n,-0.05,0.03)], then Ngene will perform draws over a Normal distribution with mean -0.05 (the most likely value), and a standard deviation of 0.03 (indicating the unreliability of the prior). Some of these draws may be greater than zero. To avoid positive price coefficients when drawing from the distribution, you could instead use b1[(u,-0.1,0)], which is a uniform distribution between -0.1 and 0. This distribution also has a mean of -0.05, but will avoid drawing positive values for the price coefficient.
Note that 5 rows in a design is very small. Also note that Ngene struggles to find a design because most of your choice tasks will contain a dominant alternative. You can find more efficient designs by increasing the number of rows (and block the design so that you still only give 5 choice tasks to a respondent) and using the modified Federov algorithm. This algorithm is more capable in handling designs with many constraints (in your case, dominance constraints) but cannot guarantee attribute level balance, so imposing some attribute level balance constraints is necessary. In the example below, I require that each attribute level appears between 1 and 3 times across the 10 rows.
- Code: Select all
Design
;alts = alt1*, alt2*, alt3*, nobuy
;rows = 10
;block = 2
;eff = (mnl,d)
;alg = mfederov
;model:
U(alt1) = b0
+ b1[-0.001] * price[25,40,55,70,85](1-3,1-3,1-3,1-3,1-3)
+ b2[-0.001] * broken[5,10,15,20,30](1-3,1-3,1-3,1-3,1-3)
/
U(alt2) = b0
+ b1 * price
+ b2 * broken
/
U(alt3) = b0
+ b1 * price
+ b2 * broken
$
Michiel