XAUUSD在以英镑计价的账户上的手数错误? - 页 2 12345 新评论 Simon Gniadkowski 2013.11.11 08:21 #11 DomGilberto: 不,这不是一个差价投注账户。 @WHRoader - 你的意思是我不希望在计算中加入点数? 如果我不在公式中加入点数,我怎么能根据到止损点的距离对给定的交易适用正确的风险呢?(困惑)。 23.64 || 2,364点...这就是我想搞清楚的问题......坦率地说,我确信我应用的1金衡盎司头寸太少了,因为我有一个以英镑计价的账户......我只是需要有人告诉我,从我所展示的内容来看,我是对的/错的? 如果我错了,请纠正我......你假设头寸大小的计算是不正确的,因为当你有损失时,你没有失去你希望的风险百分比? 你是否将点差计入计算? Dominic Gilbert 2013.11.11 09:08 #12 @ RaptorUK - 当我说仓位规模小于它应该有的规模时,我的意思是几乎是一半...... 这样说吧,我在一个小账户中进行前瞻性测试--如果该仓位击中第一个目标,它应该在适用的情况下起飞25%,否则关闭1个最小手数||1金衡盎司。这笔交易的总体货币风险相当于大约75.00英镑的风险....。XAUUSD交易在第一个目标处获利的时间刚刚超过2/3......目前该仓位的未平仓合约约为18.00英镑....。 现在,将同样的公式应用于我迄今为止所交易的所有货币对;它们都是我需要的准确的......。只有黄金和白银不是...这些货币对的价差将没有什么实质意义,因为我不是在为5-20个点做准备。止损和目标大部分时间都在80-250点左右...。 Dominic Gilbert 2013.11.11 09:15 #13 GumRai: 你能不能展示一下你的代码,结果是这样打印的? double loss_for_1_lot1 = pips_to_ssl/ ts * tv ; 2013.11.08 23:40:30 2013.06.19 19:00 V1 - XAUUSD XAUUSD,H1: loss_for_1_lot1公式。 23.64 / 0.01 * 0.01 = 23.64 也许你可以添加这样的打印 Print("账户货币=",AccountCurrency())。 来确认你确实在ST中交易英镑,因为我看不出tv会是0.01。 2013.11.11 10:13:12 2013.06.17 15:00 V1 - XAUUSD XAUUSD,H1: Account # (deleted) -- leverage is 1:200 -- Account currency is GBP -- Minium Lots are: 1 -- Min Lot Step is: 1 我可以向你保证,它是以英镑计价的...。 你的意思是显示导致该打印的代码,你有它吗? Simon Gniadkowski 2013.11.11 09:37 #14 DomGilberto: 我可以向你保证,它是以英镑为单位的...... 你的意思是显示导致该打印的代码,你有吗?那是Print()的输出,而不是代码。......你能不能显示产生该输出的代码,实际的Print(......)语句,我们需要看到你从哪里得到Tick值,因为这里面有问题。 事实上,看起来你正在打印两次ts(Tick Size)......。 23.64 / 0.01 * 0.01 = 23.64是不正确的,0.01 * 0.01 = 0.0001,23.64 / 0.0001 = 236400 Dominic Gilbert 2013.11.11 10:08 #15 好吧,就在这里。 //+------------------------------------------------------------------+ //| Order Enter Function | //+------------------------------------------------------------------+ void OrderEntry(int direction) { //Padding for the stop and padding for the entry too. double ATR_Pad = iATR(NULL,60,14,1)/2; double Buy_Pad = NormalizeDouble(ATR_Pad,Digits); double Sell_Pad = NormalizeDouble(ATR_Pad,Digits); //Stop calculations. double ATR = iATR(NULL,60,14,1); double MA = iMA(NULL,60,MA_Period,0,1,0,1); //Lot calculation double risk_amount = AccountBalance( )*RiskPercent/100; double Lot_Step = MarketInfo(Symbol(), MODE_LOTSTEP); double ts = MarketInfo(Symbol(), MODE_TICKSIZE); double tv = MarketInfo(Symbol(), MODE_TICKVALUE); double minlot = MarketInfo(Symbol(), MODE_MINLOT); //+-------------------------------------------------------------------------------------+ //| Order Buy Function | //+-------------------------------------------------------------------------------------+ //Place a pending buystop if no orders exists. Pending or otherwise. if(direction==0) { //Get Highest Price in our lookback range and set buy price above it. int iTBT = iBarShift(NULL,60, triggerBarTime, true), iHH = iHighest(NULL,60, MODE_HIGH, iTBT + CandlesBeforeBiasObtained, 0); double Buy_Here = High[iHH] + Buy_Pad; double buyPrice= NormalizeDouble(Buy_Here,Digits); double BuyStopPriceMath = MA - ATR; double BuyStopPrice = NormalizeDouble(BuyStopPriceMath,Digits); //get our buystop price from below the ma and our takeprofit based on our r:r ratio. double pips_to_bsl=buyPrice-BuyStopPrice; double buy_tp_price=(pips_to_bsl*RewardRatio)+buyPrice; double buy_takeprofit_price= NormalizeDouble(buy_tp_price, Digits); double loss_for_1_lot = pips_to_bsl/ ts * tv ; double LotSize_Buy = MathFloor( risk_amount / loss_for_1_lot/ Lot_Step) * Lot_Step ; double btp=buy_takeprofit_price; int PositionIndex1; int TotalNumberOfOrders1; TotalNumberOfOrders1 = OrdersTotal(); static double Stored_BuyPrice; if( OpenOrdersThisPair(Symbol())==0 && LotSize_Buy - minlot > - Point ) { int BuyTicketOrder = OrderSend(Symbol(),OP_BUYSTOP,LotSize_Buy,buyPrice,3,BuyStopPrice,btp,NULL,MagicNumber,0,Green); if(BuyTicketOrder == -1)Print("First Buy Order Last Error = ",GetLastError(), " On: ", Symbol()); if(BuyTicketOrder > 0)Print("FIRST BUY ORDER PLACED: ", Symbol(), " LotSize_Buy is: ", LotSize_Buy ); } 这也是在XAUUSD下的真实账户上打印的ticksize和tickvalue。 2013.11.11 06:10:51 V1 - XAUUSD XAUUSD,H1: Account # (CENSORED) -- leverage is 1:200 -- Account currency is GBP -- Tick Size is: 0.01 -- Tick Value is: 0.01 Dominic Gilbert 2013.11.11 12:16 #16 TickSize和Tickvalue会不会都一样@0.01?0.01是tick,每一个tick 的移动相当于最小仓位规模下0.01美分的P&L波动...假设我有一个美元账户,这将是准确的... 这听起来不对吗? 另外。 "23.64 / 0.01 * 0.01 = 23.64是不正确的,0.01 * 0.01 = 0.0001,23.64 / 0.0001 = 236400" 是的--如果我这样隔离公式,这将是正确的。 "23.64 / ( 0.01 * 0.01 ) = 236400 " 但是因为它是一个常数公式,所以在产生23.64方面,答案是正确的......问题是这个数字是否是按照填充正确的位置尺寸的正确数字? XAUUSD wrong lot sizing 掉期利率(第一部分):锁定与合成仓位 市场及其全局模式中的物理学 Simon Gniadkowski 2013.11.11 12:37 #17 DomGilberto: 好吧,就在这里。 这也是在XAUUSD的实盘账户上打印的ticksize和tickvalue。 对不起,你我之前的计算是错误的 . . 你仍然没有展示产生这个打印的代码 . . 2013.11.08 23:40:30 2013.06.19 19:00 V1 - XAUUSD XAUUSD,H1: loss_for_1_lot1 formula: 23.64 / 0.01 * 0.01 = 23.64 . . . 但不要紧。 Tick Value -存款货币中的tick值。 我的理解是,对于1个标准手来说,1个点的价值是多少,在我的美元账户上,XAUUSD的TickValue是1.06908。 Dominic Gilbert 2013.11.11 12:45 #18 什么?这对我来说没有任何意义 - 我看到的刻度值怎么会简单地返回0.01......。 代码都在上面^? double loss_for_1_lot = pips_to_bsl/ ts * tv ; "loss_for_1_lot "和 "loss_for_1_lot1 "是一样的,但它是在买入方......对不起,我在买入方和卖出方之间来回翻转,我只是抓住ST中打印的第一件事,无论是买入还是卖出...... 你的经纪人是谁?我的刻度值是否与它是以英镑计价的事实有关?(疑惑) Dominic Gilbert 2013.11.11 13:02 #19 好的--所以我向Alpari UK查询,他们返回了这个--这是一个以英镑计价的账户...2013.11.11 13:57:37 Pip value XAUUSD,H1: Alert: Tick Value is: 0.0626 -- Tick Size is: 0.001 Simon Gniadkowski 2013.11.11 13:05 #20 DomGilberto: 什么?这对我来说没有任何意义--为什么我看到的刻度值只是返回0.01......。 也许你的经纪人把它搞砸了 ......这有时会发生。 DomGilberto: 代码都在上面^? "loss_for_1_lot "和 "loss_for_1_lot1 "是一样的,但它是在买入方......对不起,从买入方到卖出方来回翻转,我只是抓住ST中打印的第一件事,无论那是买入还是卖出...... 没有 . . . Print("loss_for_1_lot1公式:", . . . ) 不在那里。. . DomGilberto:你的经纪人是谁?我的刻度值是否与它是以英镑计价的事实有关?(疑惑) 我试着用GoMarkets,在Alpari的英镑账户上,我得到0.626 . . . . 拿这个乘以GBPUSD,你得到0.626 * 1.5974 = 0.999,所以这与我之前在美元账户上的数值1.06908一致,因为考虑到不同的经纪商和符号价格,等等。 12345 新评论 您错过了交易机会: 免费交易应用程序 8,000+信号可供复制 探索金融市场的经济新闻 注册 登录 拉丁字符(不带空格) 密码将被发送至该邮箱 发生错误 使用 Google 登录 您同意网站政策和使用条款 如果您没有帐号,请注册 可以使用cookies登录MQL5.com网站。 请在您的浏览器中启用必要的设置,否则您将无法登录。 忘记您的登录名/密码? 使用 Google 登录
不,这不是一个差价投注账户。
@WHRoader - 你的意思是我不希望在计算中加入点数?
如果我不在公式中加入点数,我怎么能根据到止损点的距离对给定的交易适用正确的风险呢?(困惑)。
23.64 || 2,364点...这就是我想搞清楚的问题......坦率地说,我确信我应用的1金衡盎司头寸太少了,因为我有一个以英镑计价的账户......我只是需要有人告诉我,从我所展示的内容来看,我是对的/错的?
@ RaptorUK - 当我说仓位规模小于它应该有的规模时,我的意思是几乎是一半......
这样说吧,我在一个小账户中进行前瞻性测试--如果该仓位击中第一个目标,它应该在适用的情况下起飞25%,否则关闭1个最小手数||1金衡盎司。这笔交易的总体货币风险相当于大约75.00英镑的风险....。XAUUSD交易在第一个目标处获利的时间刚刚超过2/3......目前该仓位的未平仓合约约为18.00英镑....。
现在,将同样的公式应用于我迄今为止所交易的所有货币对;它们都是我需要的准确的......。只有黄金和白银不是...这些货币对的价差将没有什么实质意义,因为我不是在为5-20个点做准备。止损和目标大部分时间都在80-250点左右...。
你能不能展示一下你的代码,结果是这样打印的?
double loss_for_1_lot1 = pips_to_ssl/ ts * tv ;
2013.11.08 23:40:30 2013.06.19 19:00 V1 - XAUUSD XAUUSD,H1: loss_for_1_lot1公式。 23.64 / 0.01 * 0.01 = 23.64
也许你可以添加这样的打印
Print("账户货币=",AccountCurrency())。
来确认你确实在ST中交易英镑,因为我看不出tv会是0.01。
我可以向你保证,它是以英镑计价的...。
你的意思是显示导致该打印的代码,你有它吗?
我可以向你保证,它是以英镑为单位的......
你的意思是显示导致该打印的代码,你有吗?
那是Print()的输出,而不是代码。......你能不能显示产生该输出的代码,实际的Print(......)语句,我们需要看到你从哪里得到Tick值,因为这里面有问题。 事实上,看起来你正在打印两次ts(Tick Size)......。
23.64 / 0.01 * 0.01 = 23.64是不正确的,0.01 * 0.01 = 0.0001,23.64 / 0.0001 = 236400
这也是在XAUUSD下的真实账户上打印的ticksize和tickvalue。
TickSize和Tickvalue会不会都一样@0.01?0.01是tick,每一个tick 的移动相当于最小仓位规模下0.01美分的P&L波动...假设我有一个美元账户,这将是准确的...
这听起来不对吗?
另外。
"23.64 / 0.01 * 0.01 = 23.64是不正确的,0.01 * 0.01 = 0.0001,23.64 / 0.0001 = 236400"
是的--如果我这样隔离公式,这将是正确的。
"23.64 / ( 0.01 * 0.01 ) = 236400 "
但是因为它是一个常数公式,所以在产生23.64方面,答案是正确的......问题是这个数字是否是按照填充正确的位置尺寸的正确数字?
好吧,就在这里。
这也是在XAUUSD的实盘账户上打印的ticksize和tickvalue。
对不起,你我之前的计算是错误的 . .
你仍然没有展示产生这个打印的代码 . .
. . . 但不要紧。
Tick Value -存款货币中的tick值。
我的理解是,对于1个标准手来说,1个点的价值是多少,在我的美元账户上,XAUUSD的TickValue是1.06908。
什么?这对我来说没有任何意义 - 我看到的刻度值怎么会简单地返回0.01......。
代码都在上面^?
double loss_for_1_lot = pips_to_bsl/ ts * tv ;
"loss_for_1_lot "和 "loss_for_1_lot1 "是一样的,但它是在买入方......对不起,我在买入方和卖出方之间来回翻转,我只是抓住ST中打印的第一件事,无论是买入还是卖出......
你的经纪人是谁?我的刻度值是否与它是以英镑计价的事实有关?(疑惑)
什么?这对我来说没有任何意义--为什么我看到的刻度值只是返回0.01......。
也许你的经纪人把它搞砸了 ......这有时会发生。
代码都在上面^?
"loss_for_1_lot "和 "loss_for_1_lot1 "是一样的,但它是在买入方......对不起,从买入方到卖出方来回翻转,我只是抓住ST中打印的第一件事,无论那是买入还是卖出......
你的经纪人是谁?我的刻度值是否与它是以英镑计价的事实有关?(疑惑)