為Position Sizer創建本地化

蔡彥君

Newbie
Mar 18, 2024
13
0
1
我想爲適用於MetaTrader 5的專家顧問程序Position Sizer創建一個本地化版本,請給予協助。當前的工作計劃是對已有的中文本地化文件Chinese.mqh進行修訂。請問,對Chinese.mqh進行修訂並使之生效的操作步驟是什麽呢?
 

Enivid

Administrator
Staff member
Nov 30, 2008
18,595
1,366
144
Odesa
www.earnforex.com
首先,對不起我的中文 - 我正在使用谷歌翻譯。
我很高興知道您想為該小組創建另一個翻譯。

翻譯過程相當簡單。 首先使用不同的檔案名稱儲存 Chinese.mqh 的副本,例如 ChineseTr.mqh。 然後翻譯雙引號 (" ") 內的所有內容。 例如,我在這裡突出顯示文件前 15 行中應翻譯的內容:

1710834447909.png

準備好後,您前往 Position Sizer.mq5 並新增以下一行:
MQL5:
#include "Translations\ChineseTr.mqh"
在這一行之後:
MQL5:
#include "Translations\English.mqh"

您編譯 Position Sizer.mq5,面板現在應該採用您的語言!

請告訴我它對您有何作用。
 

蔡彥君

Newbie
Mar 18, 2024
13
0
1
經過初步比較,我發現「Chinese.mqh」和「English.mqh」存在差異。​
第一,「Chinese.mqh」沒有注釋而「English.mqh」有注釋。「Chinese.mqh」中缺少諸如「// Tabs」這樣的 注釋。​
1711464239552.png
第二,「Chinese.mqh」中劃分一行代碼的位置與「English.mqh」不一致。​
1711464431132.png
最終的結果是「Chinese.mqh」的總行數是297,而「English.mqh」的總行數是310。​
對於語言文件的初步研究結果是:​
  1. Arabic.mqh有注釋,總行數是315。
  2. Chinese.mqh沒有注釋,總行數是297。
  3. English.mqh有注釋,總行數是310。
  4. Portuguese.mqh有注釋,總行數是308。
  5. Russian.mqh有注釋,總行數是306。
  6. Spanish.mqh沒有注釋,總行數是304。
  7. Ukrainian.mqh有注釋,總行數是308。
請教一個問題,「Chinese.mqh」中有注釋與無注釋這兩種情況對於本地化質量有什麽影響?劃分一行代碼的位置不一致對於本地化質量有什麽影響?​
 

蔡彥君

Newbie
Mar 18, 2024
13
0
1
按照「English.mqh」、「Chinese.mqh」、「頭寸調整器(中文).mqh」的順序建立内容對照和術語提煉。

第一段​

English.mqh​

MQL5:
// Tabs
#define TRANSLATION_TAB_BUTTON_MAIN "Main"
#define TRANSLATION_TAB_BUTTON_RISK "Risk"
#define TRANSLATION_TAB_BUTTON_MARGIN "Margin"
#define TRANSLATION_TAB_BUTTON_SWAPS "Swaps"
#define TRANSLATION_TAB_BUTTON_TRADING "Trading"

Chinese.mqh​

MQL5:
#define TRANSLATION_TAB_BUTTON_MAIN "主选项"
#define TRANSLATION_TAB_BUTTON_RISK "风险"
#define TRANSLATION_TAB_BUTTON_MARGIN "保证金"
#define TRANSLATION_TAB_BUTTON_SWAPS "掉期"
#define TRANSLATION_TAB_BUTTON_TRADING "交易"

頭寸調整器(中文).mqh​

MQL5:
// 標簽
#define TRANSLATION_TAB_BUTTON_MAIN "主要"
#define TRANSLATION_TAB_BUTTON_RISK "風險"
#define TRANSLATION_TAB_BUTTON_MARGIN "保證金"
#define TRANSLATION_TAB_BUTTON_SWAPS "掉期"
#define TRANSLATION_TAB_BUTTON_TRADING "交易"

術語提煉​

中文規范名英語譯名(全寫)英語譯名(縮寫)
風險risk
保證金margin
掉期swap
標簽tab

代碼解釋​

MQL5:
// 標簽 表示「標簽」按鈕。
#define TRANSLATION_TAB_BUTTON_MAIN "主要" 翻譯按鈕上的文本「Main」。
#define TRANSLATION_TAB_BUTTON_RISK "風險" 翻譯按鈕上的文本「Risk」。
#define TRANSLATION_TAB_BUTTON_MARGIN "保證金" 翻譯按鈕上的文本「Margin」。
#define TRANSLATION_TAB_BUTTON_SWAPS "掉期" 翻譯按鈕上的文本「Swaps」。
#define TRANSLATION_TAB_BUTTON_TRADING "交易" 翻譯按鈕上的文本「Trading」。
 
Last edited:

蔡彥君

Newbie
Mar 18, 2024
13
0
1

第二段​

English.mqh​

MQL5:
// Caption
#define TRANSLATION_LABEL_SPREAD "Spread"

Chinese.mqh​

MQL5:
#define TRANSLATION_LABEL_SPREAD "点差"

頭寸調整器(中文).mqh​

MQL5:
// 標題
#define TRANSLATION_LABEL_SPREAD "點差"

術語提煉​

中文規范名英語譯名(全寫)英語譯名(縮寫)
點差spread
標號label

代碼解釋​

MQL5:
// 標題 表示頭寸調整器最上方的標題欄。
#define TRANSLATION_LABEL_SPREAD "點差"  翻譯以「標號」顯示的「點差」。
 

蔡彥君

Newbie
Mar 18, 2024
13
0
1

第三段​

English.mqh​

MQL5:
// Main tab
// Entry
#define TRANSLATION_LABEL_ENTRY "Entry"
#define TRANSLATION_BUTTON_LONG "Long"
#define TRANSLATION_BUTTON_SHORT "Short"
 
#define TRANSLATION_TOOLTIP_BUTTON_LONG_SHORT "Switch between Long and Short"
 
#define TRANSLATION_TOOLTIP_ENTRY_INCREASE "Increase Entry by 1 point"
#define TRANSLATION_TOOLTIP_ENTRY_DECREASE "Decrease Entry by 1 point"

Chinese.mqh​

MQL5:
#define TRANSLATION_LABEL_ENTRY "入场位"
 
#define TRANSLATION_BUTTON_LONG "做多"
#define TRANSLATION_BUTTON_SHORT "做空"
 
#define TRANSLATION_TOOLTIP_BUTTON_LONG_SHORT "在做多与做空之间切换"
 
#define TRANSLATION_TOOLTIP_ENTRY_INCREASE "入场位增加1点"
#define TRANSLATION_TOOLTIP_ENTRY_DECREASE "入场位减少1点"

頭寸調整器(中文).mqh​

MQL5:
// 主要標簽
// 入場位
#define TRANSLATION_LABEL_ENTRY "入場位"
#define TRANSLATION_BUTTON_LONG "做多"
#define TRANSLATION_BUTTON_SHORT "做空"
 
#define TRANSLATION_TOOLTIP_BUTTON_LONG_SHORT "在做多和做空之間切換"
 
#define TRANSLATION_TOOLTIP_ENTRY_INCREASE "入場位增加1點"
#define TRANSLATION_TOOLTIP_ENTRY_DECREASE "入場位減少1點"

術語提煉​

中文規范名英語譯名(全寫)英語譯名(縮寫)
percentage in pointpip
point
按鈕button
工具提示tooltip
在包含日圓的貨幣對中,1點(point)是貨幣對中價格變動的最小單位,它表示在貨幣對價格中小數點右邊第三位數的報價。點(pip)是貨幣對中價格變動的單位,它表示在貨幣對價格中小數點右邊第二位數的報價。他們的換算關係是:1點(pip)=10點(point)
1711985472772.png
在MetaTrader 5中采用的是1點 (point)。
1711985948293.png
在不包含日圓的貨幣對中,1點(point)是貨幣對中價格變動的最小單位,它表示在貨幣對價格中小數點右邊第五位數的報價。點(pip)是貨幣對中價格變動的單位,它表示在貨幣對價格中小數點右邊第四位數的報價。他們的換算關係是:1點(pip)=10點(point)
1711986560349.png
在MetaTrader 5中采用的是1點 (point)。
1711986764765.png

代碼解釋​

MQL5:
// 主要標簽 表示「主要」標簽的按鈕。
// 入場位 表示訂單的進入價位。
#define TRANSLATION_LABEL_ENTRY "入場位" 表示訂單的進入價位。
#define TRANSLATION_BUTTON_LONG "做多" 在這裏,「Long」表示長倉。長倉意即買入資產的頭寸,在這裏創譯為「做多」。
#define TRANSLATION_BUTTON_SHORT "做空" 在這裏,「Short」表示短倉。短倉意即賣出資產的頭寸,在這裏創譯為「做空」。
 
#define TRANSLATION_TOOLTIP_BUTTON_LONG_SHORT "在做多和做空之間切換" 使用鼠標左鍵單擊這個按鈕可以切換「做多」按鈕和「做空」按鈕。
 
#define TRANSLATION_TOOLTIP_ENTRY_INCREASE "入場位增加1點" 將訂單的進入價位增加1點(point)。
#define TRANSLATION_TOOLTIP_ENTRY_DECREASE "入場位減少1點" 將訂單的進入價位減少1點(point)。
 
Last edited:

蔡彥君

Newbie
Mar 18, 2024
13
0
1

第四段​

English.mqh​

MQL5:
// Stop-loss
#define TRANSLATION_LABEL_STOPLOSS "Stop-loss"
#define TRANSLATION_BUTTON_SL "SL, points"
 
#define TRANSLATION_TOOLTIP_STOPLOSS_INCREASE "Increase Stop-loss by 1 point"
#define TRANSLATION_TOOLTIP_STOPLOSS_DECREASE "Decrease Stop-loss by 1 point"

Chinese.mqh​

MQL5:
#define TRANSLATION_LABEL_STOPLOSS "止损位"
#define TRANSLATION_BUTTON_SL "止损位,点数"
 
#define TRANSLATION_TOOLTIP_STOPLOSS_INCREASE "止损位增加1点"
#define TRANSLATION_TOOLTIP_STOPLOSS_DECREASE "止损位减少1点"

頭寸調整器(中文).mqh​

MQL5:
// 止損位
#define TRANSLATION_LABEL_STOPLOSS "止損位"
#define TRANSLATION_BUTTON_SL "止損位(點數)"
 
#define TRANSLATION_TOOLTIP_STOPLOSS_INCREASE "止損位增加1點"
#define TRANSLATION_TOOLTIP_STOPLOSS_DECREASE "止損位減少1點"

術語提煉​

中文規范名英語譯名(全寫)英語譯名(縮寫)
止損stop lossSL

代碼解釋​


MQL5:
// 止損位 //表示訂單的止損價位。
#define TRANSLATION_LABEL_STOPLOSS "止損位"  //表示訂單的止損價位。
#define TRANSLATION_BUTTON_SL "止損位(點數)" //表示止損的點數。去掉原文中的逗號,改爲夾注號。
 
#define TRANSLATION_TOOLTIP_STOPLOSS_INCREASE "止損位增加1點" //這表示止損按鈕的工具提示:將止損的價格增加1點(point)。
#define TRANSLATION_TOOLTIP_STOPLOSS_DECREASE "止損位減少1點" //這表示止損按鈕的工具提示:將止損的價格減少1點(point)。
 
Last edited:

蔡彥君

Newbie
Mar 18, 2024
13
0
1

第五段​

English.mqh​

MQL5:
// Take-profit
#define TRANSLATION_LABEL_TAKEPROFIT "Take-profit"
#define TRANSLATION_BUTTON_TP "TP, points"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_ADD "Add a take-profit level"
#define TRANSLATION_TOOLTIP_BUTTON_TP "Set TP based on SL or enable locked TP mode"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE "Increase Take-profit by 1 point"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE "Decrease Take-profit by 1 point"
 
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_DISTANCE "TP"
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_POINTS "points"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_REMOVE "Remove Take-profit"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE_MULTIPLE "Increase Take-profit"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE_MULTIPLE "Decrease Take-profit"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_BY_ONE_POINT "by 1 point"

Chinese.mqh​

MQL5:
#define TRANSLATION_LABEL_TAKEPROFIT "止盈位"
#define TRANSLATION_BUTTON_TP "止盈位,点数"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_ADD "添加止盈位"
#define TRANSLATION_TOOLTIP_BUTTON_TP "让止盈位基于止损位或启用锁定止盈位模式 "
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE "止盈位增加1点"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE "止损位减少1点"
 
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_DISTANCE "止盈位"
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_POINTS "点数"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_REMOVE "移除止盈位"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE_MULTIPLE "止盈位增加"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE_MULTIPLE "止盈位减少"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_BY_ONE_POINT "1点"

頭寸調整器(中文).mqh​

MQL5:
// 止盈位
#define TRANSLATION_LABEL_TAKEPROFIT "止盈位"
#define TRANSLATION_BUTTON_TP "止盈位(點數)"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_ADD "添加止盈位"
#define TRANSLATION_TOOLTIP_BUTTON_TP "根據止損位設置止盈位或啓用鎖定止盈位模式"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE "止盈位增加1點"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE "止盈位減少1點"
 
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_DISTANCE "止盈位"
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_POINTS "點數"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_REMOVE "移除止盈位"
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE_MULTIPLE "增加止盈位"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE_MULTIPLE "減少止盈位"
#define TRANSLATION_TOOLTIP_TAKEPROFIT_BY_ONE_POINT "1點"

術語提煉​

中文規范名英語譯名(全寫)英語譯名(縮寫)
止盈take profitTP
移除remove

代碼解釋​

MQL5:
// 止盈位 //表示止盈的價位。
#define TRANSLATION_LABEL_TAKEPROFIT "止盈位" //表示以「標號」顯示的止盈價位。
#define TRANSLATION_BUTTON_TP "止盈位(點數)" //表示以「點數」顯示的「止盈」按鈕。
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_ADD "添加止盈位" //該工具提示顯示添加一個止盈價位。
#define TRANSLATION_TOOLTIP_BUTTON_TP "根據止損位設置止盈位或啓用鎖定止盈位模式" //「止盈」按鈕的工具提示。
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE "止盈位增加1點" //添加止盈價位的工具提示。
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE "止盈位減少1點" //減少止盈價位的工具提示。
 
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_DISTANCE "止盈位" //該「標號」顯示多個止盈的價位。
#define TRANSLATION_LABEL_TAKEPROFIT_MULTIPLE_POINTS "點數" //該「標號」顯示多個止盈的點數。
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_REMOVE "移除止盈位" //該「工具提示」顯示移除止盈位。
 
#define TRANSLATION_TOOLTIP_TAKEPROFIT_INCREASE_MULTIPLE "增加止盈位" //該「工具提示」顯示增加止盈位。
#define TRANSLATION_TOOLTIP_TAKEPROFIT_DECREASE_MULTIPLE "減少止盈位" //該「工具提示」顯示減少止盈位。
#define TRANSLATION_TOOLTIP_TAKEPROFIT_BY_ONE_POINT "1點" //該「工具提示」顯示止盈位的點數。