Binary options are also called digitals. In the flat vol Black-Scholes (BS) world using the usual BS notation, the fair price of the cash or nothing option is:
e^(โrt)*N(d2) which is the discounted probability of the option expiring in the money.
In reality, market makers price a digital as a tight call spread to capture skewness. For example, setting strikes at ๐พยฑ = ๐พ ยฑ1/2๐๐พ, in the limit of ๐๐พ โ 0, the payoff approaches that of a digital. The reason is that a tight call spread, by using two vanilla options, effectively accounts for the volatility smile skew. I doubt your brokers do that themselves but rather have a direct link to actual market makers via professional trading systems like 360T or Bloomberg FXGO and the like.
Theoretically, an infinitesimally small spread will price a digital exactly. However, the required notional becomes increasingly large. Therefore, there is a trade-off between being partially unhedged and liquidity considerations. Why?
A digital call is replicated by buying a call at the lower strike and selling a call at the upper strike. Think for example of EURUSD (CCY1CCY2 to make it generic), with notional in EUR and payment in USD. A call spread will pay max(0, ๐_t โ ๐พ_{๐๐๐ค๐๐}) โ min(0, ๐_๐ก โ ๐พ_{๐ข๐๐๐๐}).
Specifically, the call spread is implemented as ๐ท๐๐๐๐ก๐๐ = ๐ต๐(๐พ +1/2๐๐พ, ๐ฃ๐๐(๐พ +1/2๐๐พ)) โ ๐ต๐(๐พ -1/2๐๐พ, ๐ฃ๐๐(๐พ -1/2๐๐พ))
with
๐๐พ = 1% for example, i.e. 1/2๐๐พ = 0.005. This notation shows that each strike has its own associated IVOL.
Below the lower strike, both options are OTM and expire worthless. The payoff is net zero above the upper strike. The area in between is not fully hedged and max profit equals the spread (๐_๐ก โ ๐พ_{๐๐๐ค๐๐}) โ (๐_๐ก โ ๐พ_{๐ข๐๐๐๐}) = ๐พ_{๐ข๐๐๐๐} โ ๐พ_{๐๐๐ค๐๐}. As long as CCY1 notional corresponds to the desired payoff in CCY2, any desired CCY2 payoff can be achieved by scaling the notional by 1/๐๐พ. Therefore, the smaller the spread, the larger the notional.
If the underlying expires (๐_๐) in a small region ๐พ < ๐_๐ < ๐พ + ๐ where ๐ <
๐๐พ/2 then a seller of the digital has to pay out more than the hedge nets. If on the other hand, you set the strikes as ๐พ_โ = ๐พ-๐๐พ/2 and ๐พ, then you make money regardless of where the underlying expires. This is called an over-hedge as illustrated in the figure below.
An over-hedge will cost more than the centred hedge on the barrier strike,
because its payoff is strictly higher. That is a detail that is omitted in the figure above (the payoff diagrams would shift slightly, reflecting different costs for the premium).
Market makers frequently make the spread expiry and vol dependent. That is something you will typically not find at vendors like Bloomberg (their internal pricer, not what market makers show on FXGO) where spreads are simply kept constant for all digitals (like the 1% illustrated above).
Theoretically, there exists another way of computing the value of a digital by using BS and adjust it numerically.
Digital = BS_{dig} + cp โ BS_{vega} โ (dvol / dK)
where BS_{dig} = N(d2), cp is a call or put flag and dvol / dK is done numerically.
However, the preferred way of pricing digitals is via call spreads.
On a side remark, do not invest in something that you do not understand. If you cannot explain the investment opportunity in a few words and in an understandable way, you may need to reconsider the potential investment.