最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

期貨量化軟件:赫茲量化中并行粒子群優(yōu)化的研究

2023-10-24 17:08 作者:大牛啊呢  | 我要投稿

根據(jù)這個代碼,每個粒子都有一個當(dāng)前的位置、速度和過去“最佳”點的記憶。這里,“最佳”點是指達到該粒子目標(biāo)函數(shù)最高值的點(一組EA輸入?yún)?shù))。讓我們在類里面描述一下。

?class Particle ?{ ? ?public: ? ? ?double position[]; ? ?// current point ? ? ?double best[]; ? ? ? ?// best point known to the particle ? ? ?double velocity[]; ? ?// current speed ? ? ? ? ? ?double positionValue; // EA performance in current point ? ? ?double bestValue; ? ? // EA performance in the best point ? ? ?int ? ?group; ? ? ? ? ? ?Particle(const int params) ? ? ?{ ? ? ? ?ArrayResize(position, params); ? ? ? ?ArrayResize(best, params); ? ? ? ?ArrayResize(velocity, params); ? ? ? ?bestValue = -DBL_MAX; ? ? ? ?group = -1; ? ? ?} ?};

所有數(shù)組的大小都等于優(yōu)化空間的維數(shù),因此它等于正在優(yōu)化的專家顧問參數(shù)的數(shù)目(傳遞給構(gòu)造函數(shù))。默認情況下,目標(biāo)函數(shù)值越大,優(yōu)化效果越好。因此,用最小可能的 -DBL_MAX 數(shù)值來初始化 bestValue 字段。其中一個交易指標(biāo)通常被用來作為評估EA的標(biāo)準(zhǔn),如利潤、盈利能力、夏普比率等。如果通過較低值被認為更好的參數(shù),例如回撤,來執(zhí)行優(yōu)化,則可以進行適當(dāng)?shù)霓D(zhuǎn)換以最大化相反的值。

數(shù)組和變量是公有的,以簡化訪問和它們的重新計算代碼。嚴(yán)格遵守OOP原則需要使用“private”修飾符隱藏它們,并描述讀取和修改方法。

除了單個粒子外,該算法還處理所謂的“拓撲”或粒子子集。它們可以根據(jù)不同的原則來創(chuàng)建?!吧鐣后w拓撲”將用于我們的案例。這樣的組存儲有關(guān)其所有粒子中最佳位置的信息。

?class Group ?{ ? ?private: ? ? ?double result; ? ?// best EA performance in the group ? ? ? ?public: ? ? ?double optimum[]; // best known position in the group ? ? ? ? ? ?Group(const int params) ? ? ?{ ? ? ? ?ArrayResize(optimum, params); ? ? ? ?ArrayInitialize(optimum, 0); ? ? ? ?result = -DBL_MAX; ? ? ?} ? ? ? ? ? ?void assign(const double x) ? ? ?{ ? ? ? ?result = x; ? ? ?} ? ? ? ? ? ?double getResult() const ? ? ?{ ? ? ? ?return result; ? ? ?} ? ? ? ? ? ?bool isAssigned() ? ? ?{ ? ? ? ?return result != -DBL_MAX; ? ? ?} ?};

通過在粒子類的“group”字段中指定組名,我們可以指示粒子所屬的組(見上文)。

現(xiàn)在,讓我們繼續(xù)對粒子群算法本身進行編碼。它將作為一個單獨的類實現(xiàn)。讓我們從粒子和群的數(shù)組開始。

?class Swarm ?{ ? ?private: ? ? ?Particle *particles[]; ? ? ?Group *groups[]; ? ? ?int _size; ? ? ? ? ? ? // number of particles ? ? ?int _globals; ? ? ? ? ?// number of groups ? ? ?int _params; ? ? ? ? ? // number of parameters to optimize

對于每個參數(shù),我們需要指定執(zhí)行優(yōu)化的值的范圍,以及增量(步長)。

? ? ?double highs[]; ? ? ?double lows[]; ? ? ?double steps[];


期貨量化軟件:赫茲量化中并行粒子群優(yōu)化的研究的評論 (共 條)

分享到微博請遵守國家法律
伊川县| 临朐县| 故城县| 黔东| 丁青县| 乌兰察布市| 霞浦县| 通榆县| 格尔木市| 河北省| 芜湖市| 宁乡县| 通州区| 房山区| 东源县| 故城县| 晋宁县| 汾西县| 长白| 旬阳县| 乌鲁木齐县| 类乌齐县| 浮山县| 大宁县| 秦皇岛市| 延边| 新化县| 芦溪县| 镇安县| 湘潭市| 徐水县| 调兵山市| 隆安县| 山丹县| 新巴尔虎右旗| 昔阳县| 吉水县| 沙坪坝区| 丰宁| 大足县| 双柏县|