[FEAT] .NET 10 기반 Quant Engine 공식 포팅 및 Blazor UI 리뉴얼 완료 #6
@@ -1,6 +1,9 @@
|
|||||||
name: Snapshot Admin Deployment
|
name: Snapshot Admin Deployment
|
||||||
|
|
||||||
on:
|
on:
|
||||||
|
push:
|
||||||
|
branches:
|
||||||
|
- main
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
concurrency:
|
concurrency:
|
||||||
@@ -8,85 +11,43 @@ concurrency:
|
|||||||
cancel-in-progress: true
|
cancel-in-progress: true
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
deploy-snapshot-admin:
|
build-and-deploy:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
timeout-minutes: 20
|
timeout-minutes: 15
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Code
|
- name: Checkout Code
|
||||||
run: |
|
uses: actions/checkout@v3
|
||||||
echo "[deploy] checkout main for snapshot admin runtime"
|
|
||||||
if [ -d .git ]; then
|
|
||||||
git remote set-url origin http://x-access-token:${{ secrets.GITHUB_TOKEN }}@192.168.123.100:8418/KimJaeHyun/myfinance.git
|
|
||||||
else
|
|
||||||
git init
|
|
||||||
git remote add origin http://x-access-token:${{ secrets.GITHUB_TOKEN }}@192.168.123.100:8418/KimJaeHyun/myfinance.git
|
|
||||||
fi
|
|
||||||
git fetch origin main --depth=1
|
|
||||||
git reset --hard FETCH_HEAD
|
|
||||||
|
|
||||||
- name: Setup Python Environment
|
- name: Setup .NET SDK
|
||||||
run: |
|
uses: actions/setup-dotnet@v3
|
||||||
echo "[deploy] prepare python venv for snapshot admin launcher"
|
with:
|
||||||
VENV_BASE=/volume1/gitea/python_venv
|
dotnet-version: '10.0.x'
|
||||||
REQ_HASH=$(md5sum tools/validate_snapshot_admin_workflow_v1.py 2>/dev/null | cut -d' ' -f1 || echo "snapshot-admin-default")
|
|
||||||
VENV="$VENV_BASE/$REQ_HASH"
|
|
||||||
if [ ! -f "$VENV/bin/python" ]; then
|
|
||||||
mkdir -p "$VENV_BASE"
|
|
||||||
/usr/bin/python3 -m venv "$VENV"
|
|
||||||
"$VENV/bin/pip" install --upgrade pip --quiet
|
|
||||||
fi
|
|
||||||
"$VENV/bin/pip" install pyyaml --quiet
|
|
||||||
echo "$VENV/bin" >> $GITHUB_PATH
|
|
||||||
|
|
||||||
- name: Deploy Snapshot Admin Runtime
|
- name: Publish Blazor Web App
|
||||||
|
run: |
|
||||||
|
echo "[deploy] publishing .NET 10 Blazor app"
|
||||||
|
dotnet publish src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj -c Release -o ./publish
|
||||||
|
|
||||||
|
- name: Compress Artifact
|
||||||
|
run: |
|
||||||
|
echo "[deploy] compressing publish output"
|
||||||
|
tar -czf quantengine.tar.gz -C ./publish .
|
||||||
|
|
||||||
|
- name: Deploy to Host via Local SSH
|
||||||
env:
|
env:
|
||||||
SNAPSHOT_ADMIN_AUTH_USER: ${{ vars.SNAPSHOT_ADMIN_AUTH_USER }}
|
SSH_PRIVATE_KEY: ${{ secrets.SSH_PRIVATE_KEY }}
|
||||||
SNAPSHOT_ADMIN_AUTH_PASSWORD: ${{ secrets.SNAPSHOT_ADMIN_AUTH_PASSWORD }}
|
|
||||||
run: |
|
run: |
|
||||||
echo "[deploy] restart loopback service on 127.0.0.1:8787"
|
echo "[deploy] setting up SSH and deploying shadow copy"
|
||||||
export ROOT_DIR="$PWD"
|
mkdir -p ~/.ssh
|
||||||
export SNAPSHOT_ADMIN_HOST=127.0.0.1
|
echo "$SSH_PRIVATE_KEY" > ~/.ssh/id_rsa
|
||||||
export SNAPSHOT_ADMIN_PORT=8787
|
chmod 600 ~/.ssh/id_rsa
|
||||||
export SNAPSHOT_ADMIN_PID_FILE="$PWD/Temp/snapshot_admin.pid"
|
ssh-keyscan -H host.docker.internal >> ~/.ssh/known_hosts
|
||||||
export SNAPSHOT_ADMIN_LOG_FILE="$PWD/Temp/snapshot_admin.log"
|
|
||||||
export SNAPSHOT_ADMIN_STATE_URL="http://127.0.0.1:8787/api/state"
|
|
||||||
export SNAPSHOT_ADMIN_PUBLIC_STATE_URL="https://admin.example.com/api/state"
|
|
||||||
export SNAPSHOT_ADMIN_AUTH_USER="${SNAPSHOT_ADMIN_AUTH_USER:-}"
|
|
||||||
export SNAPSHOT_ADMIN_AUTH_PASSWORD="${SNAPSHOT_ADMIN_AUTH_PASSWORD:-}"
|
|
||||||
bash tools/run_snapshot_admin_synology.sh restart
|
|
||||||
|
|
||||||
- name: Verify Snapshot Admin Runtime
|
# Upload artifact and deploy script to host
|
||||||
env:
|
ssh kjh2064@host.docker.internal "mkdir -p /home/kjh2064/tmp"
|
||||||
SNAPSHOT_ADMIN_AUTH_USER: ${{ vars.SNAPSHOT_ADMIN_AUTH_USER }}
|
scp quantengine.tar.gz kjh2064@host.docker.internal:/home/kjh2064/tmp/quantengine.tar.gz
|
||||||
SNAPSHOT_ADMIN_AUTH_PASSWORD: ${{ secrets.SNAPSHOT_ADMIN_AUTH_PASSWORD }}
|
|
||||||
run: |
|
# Execute hot deploy script
|
||||||
echo "[deploy] verify local health and auth gate"
|
ssh kjh2064@host.docker.internal "chmod +x /home/kjh2064/tmp/deploy.sh 2>/dev/null || true"
|
||||||
export ROOT_DIR="$PWD"
|
scp tools/deploy_quantengine.sh kjh2064@host.docker.internal:/home/kjh2064/tmp/deploy.sh
|
||||||
export SNAPSHOT_ADMIN_HOST=127.0.0.1
|
ssh kjh2064@host.docker.internal "chmod +x /home/kjh2064/tmp/deploy.sh && /home/kjh2064/tmp/deploy.sh"
|
||||||
export SNAPSHOT_ADMIN_PORT=8787
|
|
||||||
export SNAPSHOT_ADMIN_PID_FILE="$PWD/Temp/snapshot_admin.pid"
|
|
||||||
export SNAPSHOT_ADMIN_LOG_FILE="$PWD/Temp/snapshot_admin.log"
|
|
||||||
export SNAPSHOT_ADMIN_STATE_URL="http://127.0.0.1:8787/api/state"
|
|
||||||
export SNAPSHOT_ADMIN_AUTH_USER="${SNAPSHOT_ADMIN_AUTH_USER:-}"
|
|
||||||
export SNAPSHOT_ADMIN_AUTH_PASSWORD="${SNAPSHOT_ADMIN_AUTH_PASSWORD:-}"
|
|
||||||
echo "[deploy] wait for service readiness"
|
|
||||||
ready=0
|
|
||||||
for attempt in $(seq 1 30); do
|
|
||||||
if bash tools/run_snapshot_admin_synology.sh healthcheck; then
|
|
||||||
ready=1
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
echo "[deploy] healthcheck retry $attempt/30"
|
|
||||||
sleep 2
|
|
||||||
done
|
|
||||||
if [ "$ready" -ne 1 ]; then
|
|
||||||
echo "[deploy] snapshot admin did not become ready in time"
|
|
||||||
tail -n 60 "$SNAPSHOT_ADMIN_LOG_FILE" || true
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if [ -n "$SNAPSHOT_ADMIN_AUTH_USER" ] && [ -n "$SNAPSHOT_ADMIN_AUTH_PASSWORD" ]; then
|
|
||||||
curl -fsS -u "${SNAPSHOT_ADMIN_AUTH_USER}:${SNAPSHOT_ADMIN_AUTH_PASSWORD}" http://127.0.0.1:8787/api/state | python3 -c "import json,sys; print(json.load(sys.stdin)['version']['app'])"
|
|
||||||
else
|
|
||||||
curl -fsS http://127.0.0.1:8787/api/state | python3 -c "import json,sys; print(json.load(sys.stdin)['version']['app'])"
|
|
||||||
fi
|
|
||||||
echo "[deploy] snapshot admin deploy verification complete"
|
|
||||||
|
|||||||
@@ -0,0 +1,6 @@
|
|||||||
|
namespace QuantEngine.Application;
|
||||||
|
|
||||||
|
public class Class1
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\QuantEngine.Core\QuantEngine.Core.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net10.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
+39
@@ -0,0 +1,39 @@
|
|||||||
|
{
|
||||||
|
"runtimeTarget": {
|
||||||
|
"name": ".NETCoreApp,Version=v10.0",
|
||||||
|
"signature": ""
|
||||||
|
},
|
||||||
|
"compilationOptions": {},
|
||||||
|
"targets": {
|
||||||
|
".NETCoreApp,Version=v10.0": {
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"QuantEngine.Core": "1.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Application.dll": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Core.dll": {
|
||||||
|
"assemblyVersion": "1.0.0.0",
|
||||||
|
"fileVersion": "1.0.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+4
@@ -0,0 +1,4 @@
|
|||||||
|
// <autogenerated />
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Application")]
|
||||||
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9abb8d3bc31eb38d5c27cbd3ca734da4eeec9609")]
|
||||||
|
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Application")]
|
||||||
|
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Application")]
|
||||||
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|
||||||
|
// MSBuild WriteCodeFragment 클래스에서 생성되었습니다.
|
||||||
|
|
||||||
+1
@@ -0,0 +1 @@
|
|||||||
|
e3e68b7b4f28bedfa4c281c4ea433640f06d2b156729338bb8a006b285e962b7
|
||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
is_global = true
|
||||||
|
build_property.TargetFramework = net10.0
|
||||||
|
build_property.TargetFrameworkIdentifier = .NETCoreApp
|
||||||
|
build_property.TargetFrameworkVersion = v10.0
|
||||||
|
build_property.TargetPlatformMinVersion =
|
||||||
|
build_property.UsingMicrosoftNETSdkWeb =
|
||||||
|
build_property.ProjectTypeGuids =
|
||||||
|
build_property.InvariantGlobalization =
|
||||||
|
build_property.PlatformNeutralAssembly =
|
||||||
|
build_property.EnforceExtendedAnalyzerRules =
|
||||||
|
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||||
|
build_property.RootNamespace = QuantEngine.Application
|
||||||
|
build_property.ProjectDir = C:\Temp\data_feed\src\dotnet\QuantEngine.Application\
|
||||||
|
build_property.EnableComHosting =
|
||||||
|
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||||
|
build_property.EffectiveAnalysisLevelStyle = 10.0
|
||||||
|
build_property.EnableCodeStyleSeverity =
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
// <auto-generated/>
|
||||||
|
global using System;
|
||||||
|
global using System.Collections.Generic;
|
||||||
|
global using System.IO;
|
||||||
|
global using System.Linq;
|
||||||
|
global using System.Net.Http;
|
||||||
|
global using System.Threading;
|
||||||
|
global using System.Threading.Tasks;
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
+1
@@ -0,0 +1 @@
|
|||||||
|
80e94a6d094629e4ad80f7142465b92081655e3b97c91dba890ae9505b6eac2c
|
||||||
+15
@@ -0,0 +1,15 @@
|
|||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.deps.json
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Core.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Core.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.csproj.AssemblyReference.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.GeneratedMSBuildEditorConfig.editorconfig
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.AssemblyInfoInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.AssemblyInfo.cs
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.csproj.CoreCompileInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEng.294596D8.Up2Date
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\refint\QuantEngine.Application.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\ref\QuantEngine.Application.dll
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
+696
@@ -0,0 +1,696 @@
|
|||||||
|
{
|
||||||
|
"format": 1,
|
||||||
|
"restore": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj": {}
|
||||||
|
},
|
||||||
|
"projects": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
||||||
|
"projectName": "QuantEngine.Application",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"projectName": "QuantEngine.Core",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||||
|
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||||
|
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||||
|
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||||
|
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\kjh20\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
|
||||||
|
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||||
|
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<SourceRoot Include="C:\Users\kjh20\.nuget\packages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
||||||
@@ -0,0 +1,380 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"targets": {
|
||||||
|
"net10.0": {
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"framework": ".NETCoreApp,Version=v10.0",
|
||||||
|
"compile": {
|
||||||
|
"bin/placeholder/QuantEngine.Core.dll": {}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"bin/placeholder/QuantEngine.Core.dll": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"path": "../QuantEngine.Core/QuantEngine.Core.csproj",
|
||||||
|
"msbuildProject": "../QuantEngine.Core/QuantEngine.Core.csproj"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"projectFileDependencyGroups": {
|
||||||
|
"net10.0": [
|
||||||
|
"QuantEngine.Core >= 1.0.0"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"packageFolders": {
|
||||||
|
"C:\\Users\\kjh20\\.nuget\\packages\\": {},
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {},
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder": {}
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
||||||
|
"projectName": "QuantEngine.Application",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"version": 2,
|
||||||
|
"dgSpecHash": "8gfOEW9DpEc=",
|
||||||
|
"success": true,
|
||||||
|
"projectFilePath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
||||||
|
"expectedPackageFiles": [],
|
||||||
|
"logs": []
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
namespace QuantEngine.Core;
|
||||||
|
|
||||||
|
public class Class1
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,43 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public class AntiChasingResult
|
||||||
|
{
|
||||||
|
public string AntiChasingVerdict { get; set; } = "CLEAR";
|
||||||
|
public string AntiChasingVelocityStatus { get; set; } = "PASS";
|
||||||
|
public double Velocity1dInput { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class AntiChasingCalculator
|
||||||
|
{
|
||||||
|
public static AntiChasingResult ComputeAntiChasing(double velocity1d)
|
||||||
|
{
|
||||||
|
string verdict;
|
||||||
|
string status;
|
||||||
|
|
||||||
|
if (velocity1d >= 3.0)
|
||||||
|
{
|
||||||
|
verdict = "BLOCK_CHASE";
|
||||||
|
status = "BLOCKED";
|
||||||
|
}
|
||||||
|
else if (velocity1d >= 1.5)
|
||||||
|
{
|
||||||
|
verdict = "PULLBACK_WAIT";
|
||||||
|
status = "WAIT";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
verdict = "CLEAR";
|
||||||
|
status = "PASS";
|
||||||
|
}
|
||||||
|
|
||||||
|
return new AntiChasingResult
|
||||||
|
{
|
||||||
|
AntiChasingVerdict = verdict,
|
||||||
|
AntiChasingVelocityStatus = status,
|
||||||
|
Velocity1dInput = Math.Round(velocity1d, 4)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,221 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public class StopPriceResult
|
||||||
|
{
|
||||||
|
public double? StopPrice { get; set; }
|
||||||
|
public string StopPriceStatus { get; set; } = "PASS";
|
||||||
|
public double? Atr20Pct { get; set; }
|
||||||
|
public double? AtrMultiplier { get; set; }
|
||||||
|
public List<string> DataMissing { get; set; } = new List<string>();
|
||||||
|
}
|
||||||
|
|
||||||
|
public class StopActionLadderResult
|
||||||
|
{
|
||||||
|
public string Action { get; set; } = "REVIEW_HUMAN";
|
||||||
|
public string Reason { get; set; } = "NO_FORCED_EXIT";
|
||||||
|
public double QuantityPct { get; set; }
|
||||||
|
public double Priority { get; set; } = 7;
|
||||||
|
}
|
||||||
|
|
||||||
|
public class HeatThresholdResult
|
||||||
|
{
|
||||||
|
public double HardBlock { get; set; }
|
||||||
|
public double Halve { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class ExitDecisions
|
||||||
|
{
|
||||||
|
public static StopPriceResult ComputeStopPriceCore(
|
||||||
|
double? entryPrice,
|
||||||
|
double? atr20,
|
||||||
|
double? currentPrice = null,
|
||||||
|
double? atrMultiplier = null)
|
||||||
|
{
|
||||||
|
var result = new StopPriceResult();
|
||||||
|
|
||||||
|
if (!entryPrice.HasValue)
|
||||||
|
{
|
||||||
|
result.StopPrice = null;
|
||||||
|
result.StopPriceStatus = "NO_STOP_PRICE";
|
||||||
|
result.DataMissing.Add("entry_price");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!atr20.HasValue && !atrMultiplier.HasValue)
|
||||||
|
{
|
||||||
|
result.StopPrice = entryPrice.Value * 0.92;
|
||||||
|
result.StopPriceStatus = "DATA_MISSING — 하네스 업데이트 필요";
|
||||||
|
result.DataMissing.Add("atr20");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!atrMultiplier.HasValue && (!currentPrice.HasValue || currentPrice.Value == 0))
|
||||||
|
{
|
||||||
|
result.StopPrice = entryPrice.Value * 0.92;
|
||||||
|
result.StopPriceStatus = "DATA_MISSING — 하네스 업데이트 필요";
|
||||||
|
if (!atr20.HasValue) result.DataMissing.Add("atr20");
|
||||||
|
if (!currentPrice.HasValue || currentPrice.Value == 0) result.DataMissing.Add("current_price");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!atrMultiplier.HasValue)
|
||||||
|
{
|
||||||
|
double atr20Pct = (atr20!.Value / currentPrice!.Value) * 100;
|
||||||
|
atrMultiplier = atr20Pct >= 8 ? 2.0 : 1.5;
|
||||||
|
result.Atr20Pct = atr20Pct;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
result.Atr20Pct = (currentPrice.HasValue && currentPrice.Value != 0)
|
||||||
|
? (atr20!.Value / currentPrice.Value) * 100
|
||||||
|
: (double?)null;
|
||||||
|
}
|
||||||
|
|
||||||
|
result.AtrMultiplier = atrMultiplier;
|
||||||
|
result.StopPrice = Math.Max(entryPrice.Value * 0.92, entryPrice.Value - atr20!.Value * atrMultiplier.Value);
|
||||||
|
result.StopPriceStatus = "PASS";
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static StopActionLadderResult ComputeStopActionLadder(Dictionary<string, object> context)
|
||||||
|
{
|
||||||
|
string GetString(string key) =>
|
||||||
|
context.TryGetValue(key, out var val) ? val?.ToString()?.ToUpper() ?? "" : "";
|
||||||
|
|
||||||
|
double GetDouble(string key) =>
|
||||||
|
context.TryGetValue(key, out var val) && double.TryParse(val?.ToString(), out var d) ? d : 0.0;
|
||||||
|
|
||||||
|
int GetInt(string key, int def = 0) =>
|
||||||
|
context.TryGetValue(key, out var val) && int.TryParse(val?.ToString(), out var i) ? i : def;
|
||||||
|
|
||||||
|
bool GetBool(string key) =>
|
||||||
|
context.TryGetValue(key, out var val) && bool.TryParse(val?.ToString(), out var b) && b;
|
||||||
|
|
||||||
|
string timingAction = GetString("timingAction");
|
||||||
|
if (string.IsNullOrEmpty(timingAction)) timingAction = GetString("timing_action");
|
||||||
|
|
||||||
|
int rwPartial = GetInt("rw_partial");
|
||||||
|
int rwPartialExcludingRw2b = GetInt("rw_partial_excluding_rw2b");
|
||||||
|
|
||||||
|
string regimePrelim = GetString("REGIME_PRELIM");
|
||||||
|
if (string.IsNullOrEmpty(regimePrelim)) regimePrelim = GetString("regime_prelim");
|
||||||
|
|
||||||
|
double timingExitScore = GetDouble("timingExitScore");
|
||||||
|
if (timingExitScore == 0) timingExitScore = GetDouble("timing_exit_score");
|
||||||
|
|
||||||
|
double profitPct = GetDouble("profitPct");
|
||||||
|
if (profitPct == 0) profitPct = GetDouble("profit_pct");
|
||||||
|
|
||||||
|
int daysToTimeStop = GetInt("daysToTimeStop", 9999);
|
||||||
|
if (daysToTimeStop == 9999) daysToTimeStop = GetInt("days_to_time_stop", 9999);
|
||||||
|
|
||||||
|
bool trailingStopBreach = GetBool("trailingStopBreach") || GetBool("trailing_stop_breach");
|
||||||
|
bool rw2bFastTrack = GetBool("RW2b_5d_rapid_weakness") || GetBool("rw2b_5d_rapid_weakness");
|
||||||
|
|
||||||
|
if (timingAction == "STOP_OR_TIME_EXIT_READY" || rwPartial >= 4)
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "EXIT_100",
|
||||||
|
Reason = timingAction == "STOP_OR_TIME_EXIT_READY" ? "STOP_OR_TIME_EXIT_READY" : "RW_EXIT_STRONG",
|
||||||
|
QuantityPct = 100,
|
||||||
|
Priority = 1
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (regimePrelim == "RISK_OFF" || regimePrelim == "RISK_OFF_CANDIDATE")
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "REGIME_TRIM_50",
|
||||||
|
Reason = regimePrelim == "RISK_OFF" ? "REGIME_RISK_OFF" : "REGIME_RISK_OFF_CANDIDATE",
|
||||||
|
QuantityPct = 50,
|
||||||
|
Priority = 2
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rw2bFastTrack && rwPartialExcludingRw2b >= 1)
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "TRIM_50",
|
||||||
|
Reason = "RW2B_FAST_TRACK",
|
||||||
|
QuantityPct = 50,
|
||||||
|
Priority = 2.5
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rwPartial >= 3 || timingExitScore >= 75)
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "TRIM_70",
|
||||||
|
Reason = rwPartial >= 3 ? "RW_EXIT" : "TIMING_EXIT_SCORE",
|
||||||
|
QuantityPct = 70,
|
||||||
|
Priority = 3
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (trailingStopBreach || rwPartial >= 2 || (rwPartial >= 1 && timingExitScore >= 50))
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "TRIM_50",
|
||||||
|
Reason = trailingStopBreach ? "TRAILING_STOP_BREACH" : "RW_OR_TIMING_EXIT",
|
||||||
|
QuantityPct = 50,
|
||||||
|
Priority = 4
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (profitPct >= 10)
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "TAKE_PROFIT_TIER1",
|
||||||
|
Reason = "PROFIT_PCT_THRESHOLD",
|
||||||
|
QuantityPct = 25,
|
||||||
|
Priority = 5
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
if (daysToTimeStop <= 0)
|
||||||
|
{
|
||||||
|
return new StopActionLadderResult
|
||||||
|
{
|
||||||
|
Action = "TIME_EXIT_100",
|
||||||
|
Reason = "TIME_STOP_EXPIRED",
|
||||||
|
QuantityPct = 100,
|
||||||
|
Priority = 6
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
return new StopActionLadderResult();
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HeatThresholdResult ComputeDynamicHeatThresholds(string regime)
|
||||||
|
{
|
||||||
|
string r = regime?.ToUpper() ?? "";
|
||||||
|
if (r.Contains("EVENT_SHOCK"))
|
||||||
|
{
|
||||||
|
return new HeatThresholdResult { HardBlock = 5.0, Halve = 3.5 };
|
||||||
|
}
|
||||||
|
if (r.Contains("RISK_OFF"))
|
||||||
|
{
|
||||||
|
return new HeatThresholdResult { HardBlock = 7.0, Halve = 5.0 };
|
||||||
|
}
|
||||||
|
if (r.Contains("SECULAR_LEADER") && r.Contains("RISK_ON"))
|
||||||
|
{
|
||||||
|
return new HeatThresholdResult { HardBlock = 13.0, Halve = 9.0 };
|
||||||
|
}
|
||||||
|
if (r.Contains("RISK_ON"))
|
||||||
|
{
|
||||||
|
return new HeatThresholdResult { HardBlock = 12.0, Halve = 8.5 };
|
||||||
|
}
|
||||||
|
return new HeatThresholdResult { HardBlock = 10.0, Halve = 7.0 };
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,49 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public static class KrxTickNormalizer
|
||||||
|
{
|
||||||
|
private static readonly (double Limit, int Tick)[] KrxTickTable = new (double, int)[]
|
||||||
|
{
|
||||||
|
(2000, 1),
|
||||||
|
(5000, 5),
|
||||||
|
(20000, 10),
|
||||||
|
(50000, 50),
|
||||||
|
(200000, 100),
|
||||||
|
(500000, 500),
|
||||||
|
(double.PositiveInfinity, 1000)
|
||||||
|
};
|
||||||
|
|
||||||
|
public static int GetTickUnit(double price)
|
||||||
|
{
|
||||||
|
foreach (var (limit, tick) in KrxTickTable)
|
||||||
|
{
|
||||||
|
if (price < limit)
|
||||||
|
{
|
||||||
|
return tick;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return 1000;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static double NormalizeTick(double price)
|
||||||
|
{
|
||||||
|
if (price <= 0) return 0;
|
||||||
|
int tick = GetTickUnit(price);
|
||||||
|
|
||||||
|
// Round to nearest tick unit
|
||||||
|
double remainder = price % tick;
|
||||||
|
if (remainder == 0) return price;
|
||||||
|
|
||||||
|
if (remainder >= tick / 2.0)
|
||||||
|
{
|
||||||
|
return price + (tick - remainder);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return price - remainder;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,66 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public class ProfitLockResult
|
||||||
|
{
|
||||||
|
public string RatchetStage { get; set; } = "NORMAL";
|
||||||
|
public double? AutoTrailingStop { get; set; }
|
||||||
|
public string TpLadderAction { get; set; } = "적용 안함";
|
||||||
|
public bool ApexSuperActive { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class ProfitLockCalculator
|
||||||
|
{
|
||||||
|
public static string ClassifyProfitLockStage(double profitPct)
|
||||||
|
{
|
||||||
|
if (profitPct >= 60) return "APEX_SUPER";
|
||||||
|
if (profitPct >= 40) return "APEX_TRAILING";
|
||||||
|
if (profitPct >= 30) return "PROFIT_LOCK_30";
|
||||||
|
if (profitPct >= 20) return "PROFIT_LOCK_20";
|
||||||
|
if (profitPct >= 10) return "PROFIT_LOCK_10";
|
||||||
|
if (profitPct >= 0) return "BREAKEVEN_RATCHET";
|
||||||
|
return "NORMAL";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ProfitLockResult ComputeTrailingStop(
|
||||||
|
double profitPct,
|
||||||
|
double highestClose,
|
||||||
|
double atr20,
|
||||||
|
double? ratchetStop,
|
||||||
|
double averageCost)
|
||||||
|
{
|
||||||
|
string stage = ClassifyProfitLockStage(profitPct);
|
||||||
|
double baseStop = ratchetStop ?? averageCost;
|
||||||
|
double? trailingStop = null;
|
||||||
|
string tpAction = "적용 안함";
|
||||||
|
|
||||||
|
if (stage == "APEX_SUPER")
|
||||||
|
{
|
||||||
|
double raw = highestClose - 1.2 * atr20;
|
||||||
|
trailingStop = KrxTickNormalizer.NormalizeTick(Math.Max(baseStop, raw));
|
||||||
|
tpAction = "강제 10% 익절 권고";
|
||||||
|
}
|
||||||
|
else if (stage == "APEX_TRAILING")
|
||||||
|
{
|
||||||
|
double raw = highestClose - 1.5 * atr20;
|
||||||
|
trailingStop = KrxTickNormalizer.NormalizeTick(Math.Max(baseStop, raw));
|
||||||
|
tpAction = "부분익절 검토";
|
||||||
|
}
|
||||||
|
else if (stage == "PROFIT_LOCK_30" || stage == "PROFIT_LOCK_20")
|
||||||
|
{
|
||||||
|
double raw = highestClose - 2.0 * atr20;
|
||||||
|
trailingStop = KrxTickNormalizer.NormalizeTick(Math.Max(baseStop, raw));
|
||||||
|
tpAction = "래칫 유지";
|
||||||
|
}
|
||||||
|
|
||||||
|
return new ProfitLockResult
|
||||||
|
{
|
||||||
|
RatchetStage = stage,
|
||||||
|
AutoTrailingStop = trailingStop,
|
||||||
|
TpLadderAction = tpAction,
|
||||||
|
ApexSuperActive = stage == "APEX_SUPER"
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public class PullbackTriggerResult
|
||||||
|
{
|
||||||
|
public string PullbackEntryVerdict { get; set; } = "ABOVE_PULLBACK_ZONE";
|
||||||
|
public string PullbackState { get; set; } = "BLOCKED";
|
||||||
|
public double PullbackEntryTriggerPrice { get; set; }
|
||||||
|
public double PullbackUpperBand { get; set; }
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class PullbackTriggerCalculator
|
||||||
|
{
|
||||||
|
public static PullbackTriggerResult ComputePullbackTrigger(double close, double ma20, double atr20)
|
||||||
|
{
|
||||||
|
double triggerPrice = KrxTickNormalizer.NormalizeTick(ma20 - 0.5 * atr20);
|
||||||
|
double upperBand = ma20 * 1.03;
|
||||||
|
string verdict;
|
||||||
|
string state;
|
||||||
|
|
||||||
|
if (close <= upperBand)
|
||||||
|
{
|
||||||
|
verdict = "PULLBACK_ZONE";
|
||||||
|
state = "PASS";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
verdict = "ABOVE_PULLBACK_ZONE";
|
||||||
|
state = "BLOCKED";
|
||||||
|
}
|
||||||
|
|
||||||
|
return new PullbackTriggerResult
|
||||||
|
{
|
||||||
|
PullbackEntryVerdict = verdict,
|
||||||
|
PullbackState = state,
|
||||||
|
PullbackEntryTriggerPrice = triggerPrice,
|
||||||
|
PullbackUpperBand = KrxTickNormalizer.NormalizeTick(upperBand)
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Domain
|
||||||
|
{
|
||||||
|
public class SellPriceSanityResult
|
||||||
|
{
|
||||||
|
public string SellPriceSanityStatus { get; set; } = "PASS";
|
||||||
|
public List<string> SellPriceSanityIssues { get; set; } = new List<string>();
|
||||||
|
public bool HtsAllowed { get; set; } = true;
|
||||||
|
public bool ShadowLedger { get; set; }
|
||||||
|
public string Ticker { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static class SellPriceSanityChecker
|
||||||
|
{
|
||||||
|
public static SellPriceSanityResult CheckSellPriceSanity(
|
||||||
|
double sellLimitPrice,
|
||||||
|
double? stopLossPrice,
|
||||||
|
double prevClose,
|
||||||
|
string ticker = "")
|
||||||
|
{
|
||||||
|
var issues = new List<string>();
|
||||||
|
string status = "PASS";
|
||||||
|
|
||||||
|
if (stopLossPrice.HasValue && sellLimitPrice < stopLossPrice.Value)
|
||||||
|
{
|
||||||
|
issues.Add($"INVALID_PRICE_INVERSION: sell={sellLimitPrice:N0} < stop={stopLossPrice.Value:N0}");
|
||||||
|
status = "INVALID_PRICE_INVERSION";
|
||||||
|
}
|
||||||
|
|
||||||
|
double upperLimit = prevClose * 1.30;
|
||||||
|
if (sellLimitPrice > upperLimit)
|
||||||
|
{
|
||||||
|
issues.Add($"INVALID_UNREALISTIC_PRICE: sell={sellLimitPrice:N0} > prev_close*1.30={upperLimit:N0}");
|
||||||
|
if (status == "PASS")
|
||||||
|
{
|
||||||
|
status = "INVALID_UNREALISTIC_PRICE";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int tickUnit = KrxTickNormalizer.GetTickUnit(sellLimitPrice);
|
||||||
|
if (sellLimitPrice % tickUnit != 0)
|
||||||
|
{
|
||||||
|
double corrected = KrxTickNormalizer.NormalizeTick(sellLimitPrice);
|
||||||
|
issues.Add($"INVALID_TICK: sell={sellLimitPrice:N0} 호가단위={tickUnit}원 → 정규화={corrected:N0}");
|
||||||
|
if (status == "PASS")
|
||||||
|
{
|
||||||
|
status = "INVALID_TICK";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return new SellPriceSanityResult
|
||||||
|
{
|
||||||
|
SellPriceSanityStatus = status,
|
||||||
|
SellPriceSanityIssues = issues,
|
||||||
|
HtsAllowed = status == "PASS",
|
||||||
|
ShadowLedger = status != "PASS",
|
||||||
|
Ticker = ticker
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,14 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Interfaces
|
||||||
|
{
|
||||||
|
public interface IKisApiClient
|
||||||
|
{
|
||||||
|
Task<string> GetCurrentPriceAsync(string code);
|
||||||
|
Task<string> GetAskingPrice10LevelAsync(string code);
|
||||||
|
Task<string> GetDailyShortSaleAsync(string code, string startDate, string endDate);
|
||||||
|
Task<string> GetDailyItemChartPriceAsync(string code, string startDate, string endDate, string period = "D");
|
||||||
|
Task<string> GetInvestorTrendAsync(string code);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,11 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Interfaces
|
||||||
|
{
|
||||||
|
public interface INaverFinanceScraper
|
||||||
|
{
|
||||||
|
Task<string> FetchPriceHistoryAsync(string code, int pages = 3);
|
||||||
|
Task<string> FetchForeignInstitutionFlowAsync(string code, int pages = 2);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,31 @@
|
|||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using QuantEngine.Core.Models;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Interfaces
|
||||||
|
{
|
||||||
|
public interface IWorkspaceRepository
|
||||||
|
{
|
||||||
|
// Settings
|
||||||
|
Task<IEnumerable<Setting>> GetSettingsAsync();
|
||||||
|
Task<Setting?> GetSettingByKeyAsync(string key);
|
||||||
|
Task<bool> UpsertSettingAsync(Setting setting);
|
||||||
|
Task<bool> DeleteSettingAsync(string key);
|
||||||
|
|
||||||
|
// AccountSnapshot
|
||||||
|
Task<IEnumerable<AccountSnapshot>> GetAccountSnapshotsAsync();
|
||||||
|
Task<bool> InsertAccountSnapshotsAsync(IEnumerable<AccountSnapshot> snapshots);
|
||||||
|
Task<bool> ClearAccountSnapshotsAsync();
|
||||||
|
|
||||||
|
// WorkspaceApproval
|
||||||
|
Task<IEnumerable<WorkspaceApproval>> GetApprovalsAsync();
|
||||||
|
Task<WorkspaceApproval?> GetApprovalAsync(string domain, string targetRef);
|
||||||
|
Task<bool> UpsertApprovalAsync(WorkspaceApproval approval);
|
||||||
|
|
||||||
|
// WorkspaceLock
|
||||||
|
Task<IEnumerable<WorkspaceLock>> GetLocksAsync();
|
||||||
|
Task<WorkspaceLock?> GetLockAsync(string domain, string targetRef);
|
||||||
|
Task<bool> AcquireLockAsync(WorkspaceLock @lock);
|
||||||
|
Task<bool> ReleaseLockAsync(string domain, string targetRef);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Interfaces
|
||||||
|
{
|
||||||
|
public interface IYahooFinanceClient
|
||||||
|
{
|
||||||
|
Task<string> FetchHistoricalDataAsync(string symbol, string range = "4mo", string interval = "1d");
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class AccountSnapshot
|
||||||
|
{
|
||||||
|
public int Ordinal { get; set; }
|
||||||
|
public string RowJson { get; set; } = string.Empty;
|
||||||
|
public string CapturedAt { get; set; } = string.Empty;
|
||||||
|
public string Account { get; set; } = string.Empty;
|
||||||
|
public string AccountType { get; set; } = string.Empty;
|
||||||
|
public string Ticker { get; set; } = string.Empty;
|
||||||
|
public string Name { get; set; } = string.Empty;
|
||||||
|
public string ParseStatus { get; set; } = string.Empty;
|
||||||
|
public string UserConfirmed { get; set; } = string.Empty;
|
||||||
|
public string UpdatedAt { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class CollectionRun
|
||||||
|
{
|
||||||
|
public string RunId { get; set; } = string.Empty;
|
||||||
|
public string CollectorName { get; set; } = string.Empty;
|
||||||
|
public string StartedAt { get; set; } = string.Empty;
|
||||||
|
public string? FinishedAt { get; set; }
|
||||||
|
public string Status { get; set; } = string.Empty;
|
||||||
|
public string? InputSource { get; set; }
|
||||||
|
public string? OutputJsonPath { get; set; }
|
||||||
|
public string? OutputDbPath { get; set; }
|
||||||
|
public string? Notes { get; set; }
|
||||||
|
public DateTime CreatedAt { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,19 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class CollectionSnapshot
|
||||||
|
{
|
||||||
|
public string RunId { get; set; } = string.Empty;
|
||||||
|
public string DatasetName { get; set; } = string.Empty;
|
||||||
|
public string Ticker { get; set; } = string.Empty;
|
||||||
|
public string? Name { get; set; }
|
||||||
|
public string? Sector { get; set; }
|
||||||
|
public string? AsOfDate { get; set; }
|
||||||
|
public string SourcePriority { get; set; } = string.Empty;
|
||||||
|
public string SourceStatus { get; set; } = string.Empty;
|
||||||
|
public string PayloadJson { get; set; } = string.Empty;
|
||||||
|
public string ProvenanceJson { get; set; } = string.Empty;
|
||||||
|
public DateTime CreatedAt { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class CollectionSourceError
|
||||||
|
{
|
||||||
|
public string RunId { get; set; } = string.Empty;
|
||||||
|
public string? Ticker { get; set; }
|
||||||
|
public string SourceName { get; set; } = string.Empty;
|
||||||
|
public string ErrorKind { get; set; } = string.Empty;
|
||||||
|
public string ErrorMessage { get; set; } = string.Empty;
|
||||||
|
public string? PayloadJson { get; set; }
|
||||||
|
public DateTime CreatedAt { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class Setting
|
||||||
|
{
|
||||||
|
public int Ordinal { get; set; }
|
||||||
|
public string Key { get; set; } = string.Empty;
|
||||||
|
public string ValueJson { get; set; } = string.Empty;
|
||||||
|
public string Note { get; set; } = string.Empty;
|
||||||
|
public string UpdatedAt { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class WorkspaceApproval
|
||||||
|
{
|
||||||
|
public string Domain { get; set; } = string.Empty;
|
||||||
|
public string TargetRef { get; set; } = "*";
|
||||||
|
public string Status { get; set; } = string.Empty;
|
||||||
|
public string ApprovedBy { get; set; } = string.Empty;
|
||||||
|
public string ApprovedAt { get; set; } = string.Empty;
|
||||||
|
public string Note { get; set; } = string.Empty;
|
||||||
|
public string UpdatedAt { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class WorkspaceChangeLog
|
||||||
|
{
|
||||||
|
public int Id { get; set; }
|
||||||
|
public string Domain { get; set; } = string.Empty;
|
||||||
|
public string Action { get; set; } = string.Empty;
|
||||||
|
public string TargetRef { get; set; } = string.Empty;
|
||||||
|
public string Actor { get; set; } = "system";
|
||||||
|
public string Note { get; set; } = string.Empty;
|
||||||
|
public string BeforeJson { get; set; } = "null";
|
||||||
|
public string AfterJson { get; set; } = "null";
|
||||||
|
public string CreatedAt { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,13 @@
|
|||||||
|
using System;
|
||||||
|
|
||||||
|
namespace QuantEngine.Core.Models
|
||||||
|
{
|
||||||
|
public class WorkspaceLock
|
||||||
|
{
|
||||||
|
public string Domain { get; set; } = string.Empty;
|
||||||
|
public string TargetRef { get; set; } = string.Empty;
|
||||||
|
public string LockedBy { get; set; } = string.Empty;
|
||||||
|
public string Reason { get; set; } = string.Empty;
|
||||||
|
public string LockedAt { get; set; } = string.Empty;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,9 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net10.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"runtimeTarget": {
|
||||||
|
"name": ".NETCoreApp,Version=v10.0",
|
||||||
|
"signature": ""
|
||||||
|
},
|
||||||
|
"compilationOptions": {},
|
||||||
|
"targets": {
|
||||||
|
".NETCoreApp,Version=v10.0": {
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Core.dll": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
+4
@@ -0,0 +1,4 @@
|
|||||||
|
// <autogenerated />
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Core")]
|
||||||
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9abb8d3bc31eb38d5c27cbd3ca734da4eeec9609")]
|
||||||
|
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Core")]
|
||||||
|
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Core")]
|
||||||
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|
||||||
|
// MSBuild WriteCodeFragment 클래스에서 생성되었습니다.
|
||||||
|
|
||||||
+1
@@ -0,0 +1 @@
|
|||||||
|
ca1af8bf50c02703b0e1d3aaa0a84969ccff47847b63e1312eec76ac0cc883ff
|
||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
is_global = true
|
||||||
|
build_property.TargetFramework = net10.0
|
||||||
|
build_property.TargetFrameworkIdentifier = .NETCoreApp
|
||||||
|
build_property.TargetFrameworkVersion = v10.0
|
||||||
|
build_property.TargetPlatformMinVersion =
|
||||||
|
build_property.UsingMicrosoftNETSdkWeb =
|
||||||
|
build_property.ProjectTypeGuids =
|
||||||
|
build_property.InvariantGlobalization =
|
||||||
|
build_property.PlatformNeutralAssembly =
|
||||||
|
build_property.EnforceExtendedAnalyzerRules =
|
||||||
|
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||||
|
build_property.RootNamespace = QuantEngine.Core
|
||||||
|
build_property.ProjectDir = C:\Temp\data_feed\src\dotnet\QuantEngine.Core\
|
||||||
|
build_property.EnableComHosting =
|
||||||
|
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||||
|
build_property.EffectiveAnalysisLevelStyle = 10.0
|
||||||
|
build_property.EnableCodeStyleSeverity =
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
// <auto-generated/>
|
||||||
|
global using System;
|
||||||
|
global using System.Collections.Generic;
|
||||||
|
global using System.IO;
|
||||||
|
global using System.Linq;
|
||||||
|
global using System.Net.Http;
|
||||||
|
global using System.Threading;
|
||||||
|
global using System.Threading.Tasks;
|
||||||
Binary file not shown.
+1
@@ -0,0 +1 @@
|
|||||||
|
1d4729b2c00a78c9f41964249ce49a8c7cd8ac8d66a2dde519827dd3b7e693fd
|
||||||
+11
@@ -0,0 +1,11 @@
|
|||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\bin\Debug\net10.0\QuantEngine.Core.deps.json
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\bin\Debug\net10.0\QuantEngine.Core.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\bin\Debug\net10.0\QuantEngine.Core.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.GeneratedMSBuildEditorConfig.editorconfig
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.AssemblyInfoInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.AssemblyInfo.cs
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.csproj.CoreCompileInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\refint\QuantEngine.Core.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\QuantEngine.Core.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Core\obj\Debug\net10.0\ref\QuantEngine.Core.dll
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,350 @@
|
|||||||
|
{
|
||||||
|
"format": 1,
|
||||||
|
"restore": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {}
|
||||||
|
},
|
||||||
|
"projects": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"projectName": "QuantEngine.Core",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||||
|
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||||
|
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||||
|
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||||
|
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\kjh20\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
|
||||||
|
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||||
|
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<SourceRoot Include="C:\Users\kjh20\.nuget\packages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
||||||
@@ -0,0 +1,357 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"targets": {
|
||||||
|
"net10.0": {}
|
||||||
|
},
|
||||||
|
"libraries": {},
|
||||||
|
"projectFileDependencyGroups": {
|
||||||
|
"net10.0": []
|
||||||
|
},
|
||||||
|
"packageFolders": {
|
||||||
|
"C:\\Users\\kjh20\\.nuget\\packages\\": {},
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {},
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder": {}
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"projectName": "QuantEngine.Core",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,8 @@
|
|||||||
|
{
|
||||||
|
"version": 2,
|
||||||
|
"dgSpecHash": "fxehXLXYtu4=",
|
||||||
|
"success": true,
|
||||||
|
"projectFilePath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
||||||
|
"expectedPackageFiles": [],
|
||||||
|
"logs": []
|
||||||
|
}
|
||||||
@@ -0,0 +1,6 @@
|
|||||||
|
namespace QuantEngine.Infrastructure;
|
||||||
|
|
||||||
|
public class Class1
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
using System.Data;
|
||||||
|
using Npgsql;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.Data
|
||||||
|
{
|
||||||
|
public interface IDbConnectionFactory
|
||||||
|
{
|
||||||
|
IDbConnection CreateConnection();
|
||||||
|
}
|
||||||
|
|
||||||
|
public class DbConnectionFactory : IDbConnectionFactory
|
||||||
|
{
|
||||||
|
private readonly string _connectionString;
|
||||||
|
|
||||||
|
public DbConnectionFactory(string connectionString)
|
||||||
|
{
|
||||||
|
_connectionString = connectionString;
|
||||||
|
}
|
||||||
|
|
||||||
|
public IDbConnection CreateConnection()
|
||||||
|
{
|
||||||
|
return new NpgsqlConnection(_connectionString);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,161 @@
|
|||||||
|
using System.Data;
|
||||||
|
using Dapper;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.Data
|
||||||
|
{
|
||||||
|
public class DbMigrator
|
||||||
|
{
|
||||||
|
private readonly IDbConnectionFactory _connectionFactory;
|
||||||
|
|
||||||
|
public DbMigrator(IDbConnectionFactory connectionFactory)
|
||||||
|
{
|
||||||
|
_connectionFactory = connectionFactory;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void Migrate()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
conn.Open();
|
||||||
|
|
||||||
|
// Create schema if not exists
|
||||||
|
conn.Execute("CREATE SCHEMA IF NOT EXISTS quantengine;");
|
||||||
|
|
||||||
|
// 0. kis_tokens
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS kis_tokens (
|
||||||
|
account TEXT PRIMARY KEY,
|
||||||
|
access_token TEXT NOT NULL,
|
||||||
|
expires_at TEXT NOT NULL,
|
||||||
|
updated_at TEXT NOT NULL
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 1. collection_runs
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS collection_runs (
|
||||||
|
run_id TEXT PRIMARY KEY,
|
||||||
|
collector_name TEXT NOT NULL,
|
||||||
|
started_at TEXT NOT NULL,
|
||||||
|
finished_at TEXT,
|
||||||
|
status TEXT NOT NULL,
|
||||||
|
input_source TEXT,
|
||||||
|
output_json_path TEXT,
|
||||||
|
output_db_path TEXT,
|
||||||
|
notes TEXT,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 2. collection_snapshots
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS collection_snapshots (
|
||||||
|
run_id TEXT NOT NULL,
|
||||||
|
dataset_name TEXT NOT NULL,
|
||||||
|
ticker TEXT NOT NULL,
|
||||||
|
name TEXT,
|
||||||
|
sector TEXT,
|
||||||
|
as_of_date TEXT,
|
||||||
|
source_priority TEXT,
|
||||||
|
source_status TEXT,
|
||||||
|
payload_json TEXT NOT NULL,
|
||||||
|
provenance_json TEXT NOT NULL,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
|
||||||
|
PRIMARY KEY (run_id, dataset_name, ticker)
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS idx_collection_snapshots_ticker_time ON collection_snapshots(ticker, created_at DESC);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 3. collection_source_errors
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS collection_source_errors (
|
||||||
|
run_id TEXT NOT NULL,
|
||||||
|
ticker TEXT,
|
||||||
|
source_name TEXT NOT NULL,
|
||||||
|
error_kind TEXT NOT NULL,
|
||||||
|
error_message TEXT NOT NULL,
|
||||||
|
payload_json TEXT,
|
||||||
|
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS idx_collection_source_errors_run ON collection_source_errors(run_id, source_name);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 4. settings
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS settings (
|
||||||
|
ordinal INT NOT NULL,
|
||||||
|
key TEXT PRIMARY KEY,
|
||||||
|
value_json TEXT NOT NULL,
|
||||||
|
note TEXT NOT NULL DEFAULT '',
|
||||||
|
updated_at TEXT NOT NULL
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 5. account_snapshot
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS account_snapshot (
|
||||||
|
ordinal INT NOT NULL,
|
||||||
|
row_json TEXT NOT NULL,
|
||||||
|
captured_at TEXT NOT NULL DEFAULT '',
|
||||||
|
account TEXT NOT NULL DEFAULT '',
|
||||||
|
account_type TEXT NOT NULL DEFAULT '',
|
||||||
|
ticker TEXT NOT NULL DEFAULT '',
|
||||||
|
name TEXT NOT NULL DEFAULT '',
|
||||||
|
parse_status TEXT NOT NULL DEFAULT '',
|
||||||
|
user_confirmed TEXT NOT NULL DEFAULT '',
|
||||||
|
updated_at TEXT NOT NULL
|
||||||
|
);
|
||||||
|
CREATE INDEX IF NOT EXISTS idx_account_snapshot_captured_at ON account_snapshot(captured_at);
|
||||||
|
CREATE INDEX IF NOT EXISTS idx_account_snapshot_ticker ON account_snapshot(ticker);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 6. workspace_meta
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS workspace_meta (
|
||||||
|
key TEXT PRIMARY KEY,
|
||||||
|
value_json TEXT NOT NULL
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 7. workspace_change_log
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS workspace_change_log (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
domain TEXT NOT NULL,
|
||||||
|
action TEXT NOT NULL,
|
||||||
|
target_ref TEXT NOT NULL DEFAULT '',
|
||||||
|
actor TEXT NOT NULL DEFAULT 'system',
|
||||||
|
note TEXT NOT NULL DEFAULT '',
|
||||||
|
before_json TEXT NOT NULL DEFAULT 'null',
|
||||||
|
after_json TEXT NOT NULL DEFAULT 'null',
|
||||||
|
created_at TEXT NOT NULL
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 8. workspace_approval_v2
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS workspace_approval_v2 (
|
||||||
|
domain TEXT NOT NULL,
|
||||||
|
target_ref TEXT NOT NULL DEFAULT '*',
|
||||||
|
status TEXT NOT NULL,
|
||||||
|
approved_by TEXT NOT NULL DEFAULT '',
|
||||||
|
approved_at TEXT NOT NULL DEFAULT '',
|
||||||
|
note TEXT NOT NULL DEFAULT '',
|
||||||
|
updated_at TEXT NOT NULL,
|
||||||
|
PRIMARY KEY (domain, target_ref)
|
||||||
|
);
|
||||||
|
");
|
||||||
|
|
||||||
|
// 9. workspace_lock
|
||||||
|
conn.Execute(@"
|
||||||
|
CREATE TABLE IF NOT EXISTS workspace_lock (
|
||||||
|
domain TEXT NOT NULL,
|
||||||
|
target_ref TEXT NOT NULL DEFAULT '',
|
||||||
|
locked_by TEXT NOT NULL DEFAULT '',
|
||||||
|
reason TEXT NOT NULL DEFAULT '',
|
||||||
|
locked_at TEXT NOT NULL,
|
||||||
|
PRIMARY KEY (domain, target_ref)
|
||||||
|
);
|
||||||
|
");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,245 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Net.Http;
|
||||||
|
using System.Net.Http.Headers;
|
||||||
|
using System.Net.Http.Json;
|
||||||
|
using System.Text.Json;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Dapper;
|
||||||
|
using QuantEngine.Core.Interfaces;
|
||||||
|
using QuantEngine.Infrastructure.Data;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.External
|
||||||
|
{
|
||||||
|
public class KisCredentials
|
||||||
|
{
|
||||||
|
public string AppKey { get; }
|
||||||
|
public string AppSecret { get; }
|
||||||
|
public string Account { get; } // "real" | "mock"
|
||||||
|
public string Domain { get; }
|
||||||
|
|
||||||
|
public KisCredentials(string appKey, string appSecret, string account)
|
||||||
|
{
|
||||||
|
AppKey = appKey;
|
||||||
|
AppSecret = appSecret;
|
||||||
|
Account = account;
|
||||||
|
Domain = account == "real"
|
||||||
|
? "https://openapi.koreainvestment.com:9443"
|
||||||
|
: "https://openapivts.koreainvestment.com:29443";
|
||||||
|
}
|
||||||
|
|
||||||
|
public static KisCredentials Load(string account = "mock")
|
||||||
|
{
|
||||||
|
string keyVar = account == "real" ? "KIS_APP_Key" : "KIS_APP_Key_TEST";
|
||||||
|
string secretVar = account == "real" ? "KIS_APP_Secret" : "KIS_APP_Secret_TEST";
|
||||||
|
|
||||||
|
string? appKey = Environment.GetEnvironmentVariable(keyVar);
|
||||||
|
string? appSecret = Environment.GetEnvironmentVariable(secretVar);
|
||||||
|
|
||||||
|
if (string.IsNullOrEmpty(appKey) || string.IsNullOrEmpty(appSecret))
|
||||||
|
{
|
||||||
|
// Fallback registry checks are not cross-platform and environment variables should be defined.
|
||||||
|
// In production/Linux it is env-only.
|
||||||
|
throw new InvalidOperationException(
|
||||||
|
$"KIS Credentials Environment Variables missing: {keyVar} or {secretVar}."
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
return new KisCredentials(appKey, appSecret, account);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public class KisApiClient : IKisApiClient
|
||||||
|
{
|
||||||
|
private readonly HttpClient _httpClient;
|
||||||
|
private readonly IDbConnectionFactory _dbConnectionFactory;
|
||||||
|
private readonly KisCredentials _creds;
|
||||||
|
|
||||||
|
private static readonly string[] ForbiddenPathSubstrings = { "/trading/" };
|
||||||
|
private static readonly string[] ForbiddenTrIdPrefixes = { "TTTC08", "VTTC08", "TTTC01", "VTTC01", "TTTC8434R", "VTTC8434R" };
|
||||||
|
|
||||||
|
public KisApiClient(HttpClient httpClient, IDbConnectionFactory dbConnectionFactory, string account = "mock")
|
||||||
|
{
|
||||||
|
_httpClient = httpClient;
|
||||||
|
_dbConnectionFactory = dbConnectionFactory;
|
||||||
|
_creds = KisCredentials.Load(account);
|
||||||
|
}
|
||||||
|
|
||||||
|
private void AssertReadOnly(string path, string trId)
|
||||||
|
{
|
||||||
|
foreach (var forbidden in ForbiddenPathSubstrings)
|
||||||
|
{
|
||||||
|
if (path.Contains(forbidden, StringComparison.OrdinalIgnoreCase))
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException($"BLOCKED: 주문 관련 경로 호출 시도 차단 — path={path}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
foreach (var prefix in ForbiddenTrIdPrefixes)
|
||||||
|
{
|
||||||
|
if (trId.StartsWith(prefix, StringComparison.OrdinalIgnoreCase))
|
||||||
|
{
|
||||||
|
throw new InvalidOperationException($"BLOCKED: 주문 관련 TR_ID 호출 시도 차단 — tr_id={trId}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private async Task<string> IssueOrReuseTokenAsync()
|
||||||
|
{
|
||||||
|
using var conn = _dbConnectionFactory.CreateConnection();
|
||||||
|
conn.Open();
|
||||||
|
|
||||||
|
// 1. Try to load cached token
|
||||||
|
var cached = await conn.QueryFirstOrDefaultAsync<(string access_token, string expires_at)>(
|
||||||
|
"SELECT access_token, expires_at FROM quantengine.kis_tokens WHERE account = @Account",
|
||||||
|
new { Account = _creds.Account }
|
||||||
|
);
|
||||||
|
|
||||||
|
if (cached.access_token != null)
|
||||||
|
{
|
||||||
|
if (DateTime.TryParse(cached.expires_at, out var expiresAtUtc))
|
||||||
|
{
|
||||||
|
// Reuse token if it has more than 10 minutes left before expiration
|
||||||
|
if (DateTime.UtcNow < expiresAtUtc.AddMinutes(-10))
|
||||||
|
{
|
||||||
|
return cached.access_token;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. Request new token from KIS API
|
||||||
|
var requestUrl = $"{_creds.Domain}/oauth2/tokenP";
|
||||||
|
var requestBody = new
|
||||||
|
{
|
||||||
|
grant_type = "client_credentials",
|
||||||
|
appkey = _creds.AppKey,
|
||||||
|
appsecret = _creds.AppSecret
|
||||||
|
};
|
||||||
|
|
||||||
|
var response = await _httpClient.PostAsJsonAsync(requestUrl, requestBody);
|
||||||
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
|
var resData = await response.Content.ReadFromJsonAsync<JsonElement>();
|
||||||
|
var accessToken = resData.GetProperty("access_token").GetString()
|
||||||
|
?? throw new InvalidOperationException("Failed to parse access_token from response.");
|
||||||
|
var expiresInSec = resData.GetProperty("expires_in").GetInt32();
|
||||||
|
var expiresAt = DateTime.UtcNow.AddSeconds(expiresInSec);
|
||||||
|
|
||||||
|
// 3. Upsert token cache into PG database
|
||||||
|
await conn.ExecuteAsync(@"
|
||||||
|
INSERT INTO quantengine.kis_tokens (account, access_token, expires_at, updated_at)
|
||||||
|
VALUES (@Account, @AccessToken, @ExpiresAt, @UpdatedAt)
|
||||||
|
ON CONFLICT (account) DO UPDATE SET
|
||||||
|
access_token = EXCLUDED.access_token,
|
||||||
|
expires_at = EXCLUDED.expires_at,
|
||||||
|
updated_at = EXCLUDED.updated_at",
|
||||||
|
new
|
||||||
|
{
|
||||||
|
Account = _creds.Account,
|
||||||
|
AccessToken = accessToken,
|
||||||
|
ExpiresAt = expiresAt.ToString("o"),
|
||||||
|
UpdatedAt = DateTime.UtcNow.ToString("o")
|
||||||
|
}
|
||||||
|
);
|
||||||
|
|
||||||
|
return accessToken;
|
||||||
|
}
|
||||||
|
|
||||||
|
private async Task<string> SendRequestAsync(string path, string trId, Dictionary<string, string> queryParams)
|
||||||
|
{
|
||||||
|
AssertReadOnly(path, trId);
|
||||||
|
var token = await IssueOrReuseTokenAsync();
|
||||||
|
|
||||||
|
var queryBuilder = new List<string>();
|
||||||
|
foreach (var kvp in queryParams)
|
||||||
|
{
|
||||||
|
queryBuilder.Add($"{Uri.EscapeDataString(kvp.Key)}={Uri.EscapeDataString(kvp.Value)}");
|
||||||
|
}
|
||||||
|
var fullUrl = $"{_creds.Domain}{path}?{string.Join("&", queryBuilder)}";
|
||||||
|
|
||||||
|
using var request = new HttpRequestMessage(HttpMethod.Get, fullUrl);
|
||||||
|
request.Headers.Accept.Clear();
|
||||||
|
request.Headers.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
|
||||||
|
request.Headers.Add("authorization", $"Bearer {token}");
|
||||||
|
request.Headers.Add("appkey", _creds.AppKey);
|
||||||
|
request.Headers.Add("appsecret", _creds.AppSecret);
|
||||||
|
request.Headers.Add("tr_id", trId);
|
||||||
|
request.Headers.Add("custtype", "P");
|
||||||
|
|
||||||
|
var response = await _httpClient.SendAsync(request);
|
||||||
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
|
return await response.Content.ReadAsStringAsync();
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<string> GetCurrentPriceAsync(string code)
|
||||||
|
{
|
||||||
|
return SendRequestAsync(
|
||||||
|
"/uapi/domestic-stock/v1/quotations/inquire-price",
|
||||||
|
"FHKST01010100",
|
||||||
|
new Dictionary<string, string>
|
||||||
|
{
|
||||||
|
{ "FID_COND_MRKT_DIV_CODE", "J" },
|
||||||
|
{ "FID_INPUT_ISCD", code }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<string> GetAskingPrice10LevelAsync(string code)
|
||||||
|
{
|
||||||
|
return SendRequestAsync(
|
||||||
|
"/uapi/domestic-stock/v1/quotations/inquire-asking-price-exp-ccn",
|
||||||
|
"FHKST01010200",
|
||||||
|
new Dictionary<string, string>
|
||||||
|
{
|
||||||
|
{ "FID_COND_MRKT_DIV_CODE", "J" },
|
||||||
|
{ "FID_INPUT_ISCD", code }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<string> GetDailyShortSaleAsync(string code, string startDate, string endDate)
|
||||||
|
{
|
||||||
|
return SendRequestAsync(
|
||||||
|
"/uapi/domestic-stock/v1/quotations/daily-short-sale",
|
||||||
|
"FHPST04830000",
|
||||||
|
new Dictionary<string, string>
|
||||||
|
{
|
||||||
|
{ "FID_COND_MRKT_DIV_CODE", "J" },
|
||||||
|
{ "FID_INPUT_ISCD", code },
|
||||||
|
{ "FID_INPUT_DATE_1", startDate },
|
||||||
|
{ "FID_INPUT_DATE_2", endDate }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<string> GetDailyItemChartPriceAsync(string code, string startDate, string endDate, string period = "D")
|
||||||
|
{
|
||||||
|
return SendRequestAsync(
|
||||||
|
"/uapi/domestic-stock/v1/quotations/inquire-daily-itemchartprice",
|
||||||
|
"FHKST03010100",
|
||||||
|
new Dictionary<string, string>
|
||||||
|
{
|
||||||
|
{ "FID_COND_MRKT_DIV_CODE", "J" },
|
||||||
|
{ "FID_INPUT_ISCD", code },
|
||||||
|
{ "FID_INPUT_DATE_1", startDate },
|
||||||
|
{ "FID_INPUT_DATE_2", endDate },
|
||||||
|
{ "FID_PERIOD_DIV_CODE", period },
|
||||||
|
{ "FID_ORG_ADJ_PRC", "0" }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public Task<string> GetInvestorTrendAsync(string code)
|
||||||
|
{
|
||||||
|
return SendRequestAsync(
|
||||||
|
"/uapi/domestic-stock/v1/quotations/inquire-investor",
|
||||||
|
"FHKST01010900",
|
||||||
|
new Dictionary<string, string>
|
||||||
|
{
|
||||||
|
{ "FID_COND_MRKT_DIV_CODE", "J" },
|
||||||
|
{ "FID_INPUT_ISCD", code }
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,163 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Net.Http;
|
||||||
|
using System.Text;
|
||||||
|
using System.Text.Json;
|
||||||
|
using System.Text.RegularExpressions;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using QuantEngine.Core.Interfaces;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.External
|
||||||
|
{
|
||||||
|
public class NaverFinanceScraper : INaverFinanceScraper
|
||||||
|
{
|
||||||
|
private readonly HttpClient _httpClient;
|
||||||
|
private const string UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0 Safari/537.36";
|
||||||
|
private const string Referer = "https://finance.naver.com/";
|
||||||
|
|
||||||
|
public NaverFinanceScraper(HttpClient httpClient)
|
||||||
|
{
|
||||||
|
_httpClient = httpClient;
|
||||||
|
// Register CodePages encoding provider to support EUC-KR
|
||||||
|
Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);
|
||||||
|
}
|
||||||
|
|
||||||
|
private double CleanNumber(string text)
|
||||||
|
{
|
||||||
|
if (string.IsNullOrWhiteSpace(text)) return 0.0;
|
||||||
|
var cleaned = text.Replace(",", "").Replace("+", "").Replace("%", "").Trim();
|
||||||
|
return double.TryParse(cleaned, out var result) ? result : 0.0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<string> FetchPriceHistoryAsync(string code, int pages = 3)
|
||||||
|
{
|
||||||
|
var rows = new List<Dictionary<string, object>>();
|
||||||
|
var eucKr = Encoding.GetEncoding("euc-kr");
|
||||||
|
|
||||||
|
for (int page = 1; page <= pages; page++)
|
||||||
|
{
|
||||||
|
var url = $"https://finance.naver.com/item/sise_day.naver?code={code}&page={page}";
|
||||||
|
|
||||||
|
using var request = new HttpRequestMessage(HttpMethod.Get, url);
|
||||||
|
request.Headers.Add("User-Agent", UserAgent);
|
||||||
|
request.Headers.Add("Referer", Referer);
|
||||||
|
|
||||||
|
var response = await _httpClient.SendAsync(request);
|
||||||
|
if (response.StatusCode == System.Net.HttpStatusCode.Forbidden)
|
||||||
|
{
|
||||||
|
return JsonSerializer.Serialize(new
|
||||||
|
{
|
||||||
|
status = "CLOUDFLARE_BLOCKED_403",
|
||||||
|
rows = new List<object>(),
|
||||||
|
error = "Cloudflare rejected request (403 Forbidden)",
|
||||||
|
source_url = url
|
||||||
|
});
|
||||||
|
}
|
||||||
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
|
var bytes = await response.Content.ReadAsByteArrayAsync();
|
||||||
|
var html = eucKr.GetString(bytes);
|
||||||
|
|
||||||
|
// Simple regex parser for table rows
|
||||||
|
var trMatches = Regex.Matches(html, @"<tr[^>]*>([\s\S]*?)<\/tr>");
|
||||||
|
foreach (Match trMatch in trMatches)
|
||||||
|
{
|
||||||
|
var trContent = trMatch.Groups[1].Value;
|
||||||
|
var tdMatches = Regex.Matches(trContent, @"<td[^>]*>([\s\S]*?)<\/td>");
|
||||||
|
if (tdMatches.Count == 7)
|
||||||
|
{
|
||||||
|
var dateText = Regex.Replace(tdMatches[0].Groups[1].Value, @"<[^>]*>", "").Trim();
|
||||||
|
if (string.IsNullOrEmpty(dateText) || !dateText.Contains(".")) continue;
|
||||||
|
|
||||||
|
rows.Add(new Dictionary<string, object>
|
||||||
|
{
|
||||||
|
{ "date", dateText.Replace(".", "-") },
|
||||||
|
{ "close", CleanNumber(Regex.Replace(tdMatches[1].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "open", CleanNumber(Regex.Replace(tdMatches[3].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "high", CleanNumber(Regex.Replace(tdMatches[4].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "low", CleanNumber(Regex.Replace(tdMatches[5].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "volume", CleanNumber(Regex.Replace(tdMatches[6].Groups[1].Value, @"<[^>]*>", "")) }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rows.Count == 0)
|
||||||
|
{
|
||||||
|
return JsonSerializer.Serialize(new { status = "DATA_MISSING", rows = new List<object>(), source_url = Referer });
|
||||||
|
}
|
||||||
|
|
||||||
|
return JsonSerializer.Serialize(new
|
||||||
|
{
|
||||||
|
status = "OK",
|
||||||
|
rows = rows,
|
||||||
|
source_url = $"https://finance.naver.com/item/sise_day.naver?code={code}",
|
||||||
|
source_as_of = DateTime.UtcNow.AddHours(9).ToString("o")
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<string> FetchForeignInstitutionFlowAsync(string code, int pages = 2)
|
||||||
|
{
|
||||||
|
var rows = new List<Dictionary<string, object>>();
|
||||||
|
var eucKr = Encoding.GetEncoding("euc-kr");
|
||||||
|
|
||||||
|
for (int page = 1; page <= pages; page++)
|
||||||
|
{
|
||||||
|
var url = $"https://finance.naver.com/item/frgn.naver?code={code}&page={page}";
|
||||||
|
|
||||||
|
using var request = new HttpRequestMessage(HttpMethod.Get, url);
|
||||||
|
request.Headers.Add("User-Agent", UserAgent);
|
||||||
|
request.Headers.Add("Referer", Referer);
|
||||||
|
|
||||||
|
var response = await _httpClient.SendAsync(request);
|
||||||
|
if (response.StatusCode == System.Net.HttpStatusCode.Forbidden)
|
||||||
|
{
|
||||||
|
return JsonSerializer.Serialize(new
|
||||||
|
{
|
||||||
|
status = "CLOUDFLARE_BLOCKED_403",
|
||||||
|
rows = new List<object>(),
|
||||||
|
error = "Cloudflare rejected request (403 Forbidden)",
|
||||||
|
source_url = url
|
||||||
|
});
|
||||||
|
}
|
||||||
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
|
var bytes = await response.Content.ReadAsByteArrayAsync();
|
||||||
|
var html = eucKr.GetString(bytes);
|
||||||
|
|
||||||
|
var trMatches = Regex.Matches(html, @"<tr[^>]*>([\s\S]*?)<\/tr>");
|
||||||
|
foreach (Match trMatch in trMatches)
|
||||||
|
{
|
||||||
|
var trContent = trMatch.Groups[1].Value;
|
||||||
|
var tdMatches = Regex.Matches(trContent, @"<td[^>]*>([\s\S]*?)<\/td>");
|
||||||
|
if (tdMatches.Count >= 8)
|
||||||
|
{
|
||||||
|
var dateText = Regex.Replace(tdMatches[0].Groups[1].Value, @"<[^>]*>", "").Trim();
|
||||||
|
if (string.IsNullOrEmpty(dateText) || !dateText.Contains(".")) continue;
|
||||||
|
|
||||||
|
rows.Add(new Dictionary<string, object>
|
||||||
|
{
|
||||||
|
{ "date", dateText.Replace(".", "-") },
|
||||||
|
{ "close", CleanNumber(Regex.Replace(tdMatches[1].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "inst_net", CleanNumber(Regex.Replace(tdMatches[5].Groups[1].Value, @"<[^>]*>", "")) },
|
||||||
|
{ "frgn_net", CleanNumber(Regex.Replace(tdMatches[6].Groups[1].Value, @"<[^>]*>", "")) }
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (rows.Count == 0)
|
||||||
|
{
|
||||||
|
return JsonSerializer.Serialize(new { status = "DATA_MISSING", rows = new List<object>() });
|
||||||
|
}
|
||||||
|
|
||||||
|
return JsonSerializer.Serialize(new
|
||||||
|
{
|
||||||
|
status = "OK",
|
||||||
|
rows = rows,
|
||||||
|
source_url = $"https://finance.naver.com/item/frgn.naver?code={code}",
|
||||||
|
source_as_of = DateTime.UtcNow.AddHours(9).ToString("o")
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,30 @@
|
|||||||
|
using System;
|
||||||
|
using System.Net.Http;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using QuantEngine.Core.Interfaces;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.External
|
||||||
|
{
|
||||||
|
public class YahooFinanceClient : IYahooFinanceClient
|
||||||
|
{
|
||||||
|
private readonly HttpClient _httpClient;
|
||||||
|
private const string UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0 Safari/537.36";
|
||||||
|
|
||||||
|
public YahooFinanceClient(HttpClient httpClient)
|
||||||
|
{
|
||||||
|
_httpClient = httpClient;
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<string> FetchHistoricalDataAsync(string symbol, string range = "4mo", string interval = "1d")
|
||||||
|
{
|
||||||
|
var url = $"https://query1.finance.yahoo.com/v8/finance/chart/{symbol}?range={range}&interval={interval}";
|
||||||
|
using var request = new HttpRequestMessage(HttpMethod.Get, url);
|
||||||
|
request.Headers.Add("User-Agent", UserAgent);
|
||||||
|
|
||||||
|
var response = await _httpClient.SendAsync(request);
|
||||||
|
response.EnsureSuccessStatusCode();
|
||||||
|
|
||||||
|
return await response.Content.ReadAsStringAsync();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,20 @@
|
|||||||
|
<Project Sdk="Microsoft.NET.Sdk">
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<ProjectReference Include="..\QuantEngine.Core\QuantEngine.Core.csproj" />
|
||||||
|
<ProjectReference Include="..\QuantEngine.Application\QuantEngine.Application.csproj" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<ItemGroup>
|
||||||
|
<PackageReference Include="Dapper" Version="2.1.79" />
|
||||||
|
<PackageReference Include="Npgsql" Version="10.0.3" />
|
||||||
|
<PackageReference Include="System.Text.Encoding.CodePages" Version="10.0.9" />
|
||||||
|
</ItemGroup>
|
||||||
|
|
||||||
|
<PropertyGroup>
|
||||||
|
<TargetFramework>net10.0</TargetFramework>
|
||||||
|
<ImplicitUsings>enable</ImplicitUsings>
|
||||||
|
<Nullable>enable</Nullable>
|
||||||
|
</PropertyGroup>
|
||||||
|
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,192 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using Dapper;
|
||||||
|
using QuantEngine.Core.Interfaces;
|
||||||
|
using QuantEngine.Core.Models;
|
||||||
|
using QuantEngine.Infrastructure.Data;
|
||||||
|
|
||||||
|
namespace QuantEngine.Infrastructure.Repositories
|
||||||
|
{
|
||||||
|
public class WorkspaceRepository : IWorkspaceRepository
|
||||||
|
{
|
||||||
|
private readonly IDbConnectionFactory _connectionFactory;
|
||||||
|
|
||||||
|
public WorkspaceRepository(IDbConnectionFactory connectionFactory)
|
||||||
|
{
|
||||||
|
_connectionFactory = connectionFactory;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Settings
|
||||||
|
public async Task<IEnumerable<Setting>> GetSettingsAsync()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryAsync<Setting>(
|
||||||
|
"SELECT ordinal, key, value_json as ValueJson, note, updated_at as UpdatedAt FROM quantengine.settings ORDER BY ordinal ASC"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<Setting?> GetSettingByKeyAsync(string key)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryFirstOrDefaultAsync<Setting>(
|
||||||
|
"SELECT ordinal, key, value_json as ValueJson, note, updated_at as UpdatedAt FROM quantengine.settings WHERE key = @Key",
|
||||||
|
new { Key = key }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> UpsertSettingAsync(Setting setting)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync(@"
|
||||||
|
INSERT INTO quantengine.settings (ordinal, key, value_json, note, updated_at)
|
||||||
|
VALUES (@Ordinal, @Key, @ValueJson, @Note, @UpdatedAt)
|
||||||
|
ON CONFLICT (key) DO UPDATE SET
|
||||||
|
ordinal = EXCLUDED.ordinal,
|
||||||
|
value_json = EXCLUDED.value_json,
|
||||||
|
note = EXCLUDED.note,
|
||||||
|
updated_at = EXCLUDED.updated_at",
|
||||||
|
setting
|
||||||
|
);
|
||||||
|
return affected > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> DeleteSettingAsync(string key)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync(
|
||||||
|
"DELETE FROM quantengine.settings WHERE key = @Key",
|
||||||
|
new { Key = key }
|
||||||
|
);
|
||||||
|
return affected > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// AccountSnapshot
|
||||||
|
public async Task<IEnumerable<AccountSnapshot>> GetAccountSnapshotsAsync()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryAsync<AccountSnapshot>(@"
|
||||||
|
SELECT ordinal, row_json as RowJson, captured_at as CapturedAt, account, account_type as AccountType,
|
||||||
|
ticker, name, parse_status as ParseStatus, user_confirmed as UserConfirmed, updated_at as UpdatedAt
|
||||||
|
FROM quantengine.account_snapshot
|
||||||
|
ORDER BY ordinal ASC"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> InsertAccountSnapshotsAsync(IEnumerable<AccountSnapshot> snapshots)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
conn.Open();
|
||||||
|
using var tx = conn.BeginTransaction();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
foreach (var snapshot in snapshots)
|
||||||
|
{
|
||||||
|
await conn.ExecuteAsync(@"
|
||||||
|
INSERT INTO quantengine.account_snapshot (ordinal, row_json, captured_at, account, account_type, ticker, name, parse_status, user_confirmed, updated_at)
|
||||||
|
VALUES (@Ordinal, @RowJson, @CapturedAt, @Account, @AccountType, @Ticker, @Name, @ParseStatus, @UserConfirmed, @UpdatedAt)",
|
||||||
|
snapshot,
|
||||||
|
tx
|
||||||
|
);
|
||||||
|
}
|
||||||
|
tx.Commit();
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
catch
|
||||||
|
{
|
||||||
|
tx.Rollback();
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> ClearAccountSnapshotsAsync()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync("DELETE FROM quantengine.account_snapshot");
|
||||||
|
return affected >= 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// WorkspaceApproval
|
||||||
|
public async Task<IEnumerable<WorkspaceApproval>> GetApprovalsAsync()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryAsync<WorkspaceApproval>(@"
|
||||||
|
SELECT domain, target_ref as TargetRef, status, approved_by as ApprovedBy,
|
||||||
|
approved_at as ApprovedAt, note, updated_at as UpdatedAt
|
||||||
|
FROM quantengine.workspace_approval_v2"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<WorkspaceApproval?> GetApprovalAsync(string domain, string targetRef)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryFirstOrDefaultAsync<WorkspaceApproval>(@"
|
||||||
|
SELECT domain, target_ref as TargetRef, status, approved_by as ApprovedBy,
|
||||||
|
approved_at as ApprovedAt, note, updated_at as UpdatedAt
|
||||||
|
FROM quantengine.workspace_approval_v2
|
||||||
|
WHERE domain = @Domain AND target_ref = @TargetRef",
|
||||||
|
new { Domain = domain, TargetRef = targetRef }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> UpsertApprovalAsync(WorkspaceApproval approval)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync(@"
|
||||||
|
INSERT INTO quantengine.workspace_approval_v2 (domain, target_ref, status, approved_by, approved_at, note, updated_at)
|
||||||
|
VALUES (@Domain, @TargetRef, @Status, @ApprovedBy, @ApprovedAt, @Note, @UpdatedAt)
|
||||||
|
ON CONFLICT (domain, target_ref) DO UPDATE SET
|
||||||
|
status = EXCLUDED.status,
|
||||||
|
approved_by = EXCLUDED.approved_by,
|
||||||
|
approved_at = EXCLUDED.approved_at,
|
||||||
|
note = EXCLUDED.note,
|
||||||
|
updated_at = EXCLUDED.updated_at",
|
||||||
|
approval
|
||||||
|
);
|
||||||
|
return affected > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// WorkspaceLock
|
||||||
|
public async Task<IEnumerable<WorkspaceLock>> GetLocksAsync()
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryAsync<WorkspaceLock>(@"
|
||||||
|
SELECT domain, target_ref as TargetRef, locked_by as LockedBy, reason, locked_at as LockedAt
|
||||||
|
FROM quantengine.workspace_lock"
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<WorkspaceLock?> GetLockAsync(string domain, string targetRef)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
return await conn.QueryFirstOrDefaultAsync<WorkspaceLock>(@"
|
||||||
|
SELECT domain, target_ref as TargetRef, locked_by as LockedBy, reason, locked_at as LockedAt
|
||||||
|
FROM quantengine.workspace_lock
|
||||||
|
WHERE domain = @Domain AND target_ref = @TargetRef",
|
||||||
|
new { Domain = domain, TargetRef = targetRef }
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> AcquireLockAsync(WorkspaceLock @lock)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync(@"
|
||||||
|
INSERT INTO quantengine.workspace_lock (domain, target_ref, locked_by, reason, locked_at)
|
||||||
|
VALUES (@Domain, @TargetRef, @LockedBy, @Reason, @LockedAt)
|
||||||
|
ON CONFLICT (domain, target_ref) DO NOTHING",
|
||||||
|
@lock
|
||||||
|
);
|
||||||
|
return affected > 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<bool> ReleaseLockAsync(string domain, string targetRef)
|
||||||
|
{
|
||||||
|
using var conn = _connectionFactory.CreateConnection();
|
||||||
|
var affected = await conn.ExecuteAsync(
|
||||||
|
"DELETE FROM quantengine.workspace_lock WHERE domain = @Domain AND target_ref = @TargetRef",
|
||||||
|
new { Domain = domain, TargetRef = targetRef }
|
||||||
|
);
|
||||||
|
return affected > 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
+124
@@ -0,0 +1,124 @@
|
|||||||
|
{
|
||||||
|
"runtimeTarget": {
|
||||||
|
"name": ".NETCoreApp,Version=v10.0",
|
||||||
|
"signature": ""
|
||||||
|
},
|
||||||
|
"compilationOptions": {},
|
||||||
|
"targets": {
|
||||||
|
".NETCoreApp,Version=v10.0": {
|
||||||
|
"QuantEngine.Infrastructure/1.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Dapper": "2.1.79",
|
||||||
|
"Npgsql": "10.0.3",
|
||||||
|
"QuantEngine.Application": "1.0.0",
|
||||||
|
"QuantEngine.Core": "1.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Infrastructure.dll": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Dapper/2.1.79": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Dapper.dll": {
|
||||||
|
"assemblyVersion": "2.0.0.0",
|
||||||
|
"fileVersion": "2.1.79.29349"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
||||||
|
"assemblyVersion": "10.0.0.0",
|
||||||
|
"fileVersion": "10.0.25.52411"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
||||||
|
"assemblyVersion": "10.0.0.0",
|
||||||
|
"fileVersion": "10.0.25.52411"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Npgsql/10.0.3": {
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions": "10.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Npgsql.dll": {
|
||||||
|
"assemblyVersion": "10.0.3.0",
|
||||||
|
"fileVersion": "10.0.3.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"dependencies": {
|
||||||
|
"QuantEngine.Core": "1.0.0"
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Application.dll": {
|
||||||
|
"assemblyVersion": "1.0.0.0",
|
||||||
|
"fileVersion": "1.0.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"runtime": {
|
||||||
|
"QuantEngine.Core.dll": {
|
||||||
|
"assemblyVersion": "1.0.0.0",
|
||||||
|
"fileVersion": "1.0.0.0"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"QuantEngine.Infrastructure/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
},
|
||||||
|
"Dapper/2.1.79": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-8YijbzgTfmqmQOnVNorYM6K++pxqnW3nJ4aC1sRHzxUA2CcuoJ9gsTem3kgBnPRMc38zZHl4Esb6hAezXIEEuw==",
|
||||||
|
"path": "dapper/2.1.79",
|
||||||
|
"hashPath": "dapper.2.1.79.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==",
|
||||||
|
"path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0",
|
||||||
|
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==",
|
||||||
|
"path": "microsoft.extensions.logging.abstractions/10.0.0",
|
||||||
|
"hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"Npgsql/10.0.3": {
|
||||||
|
"type": "package",
|
||||||
|
"serviceable": true,
|
||||||
|
"sha512": "sha512-7nb5YzXuvWWJxB0J8DiyL3we+X4FOctZrt0fIBnucOIaIevFEEwGQVZKtiu9olXdlNAK1eNgqSral6r/jlhI4w==",
|
||||||
|
"path": "npgsql/10.0.3",
|
||||||
|
"hashPath": "npgsql.10.0.3.nupkg.sha512"
|
||||||
|
},
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"serviceable": false,
|
||||||
|
"sha512": ""
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
+4
@@ -0,0 +1,4 @@
|
|||||||
|
// <autogenerated />
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Reflection;
|
||||||
|
|
||||||
|
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Infrastructure")]
|
||||||
|
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
||||||
|
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
||||||
|
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+9abb8d3bc31eb38d5c27cbd3ca734da4eeec9609")]
|
||||||
|
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Infrastructure")]
|
||||||
|
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Infrastructure")]
|
||||||
|
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
||||||
|
|
||||||
|
// MSBuild WriteCodeFragment 클래스에서 생성되었습니다.
|
||||||
|
|
||||||
+1
@@ -0,0 +1 @@
|
|||||||
|
9a96d7ffc63c4641ea3439cffb43b648862abf07d373a4a1eb7b5d5b990f9867
|
||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
is_global = true
|
||||||
|
build_property.TargetFramework = net10.0
|
||||||
|
build_property.TargetFrameworkIdentifier = .NETCoreApp
|
||||||
|
build_property.TargetFrameworkVersion = v10.0
|
||||||
|
build_property.TargetPlatformMinVersion =
|
||||||
|
build_property.UsingMicrosoftNETSdkWeb =
|
||||||
|
build_property.ProjectTypeGuids =
|
||||||
|
build_property.InvariantGlobalization =
|
||||||
|
build_property.PlatformNeutralAssembly =
|
||||||
|
build_property.EnforceExtendedAnalyzerRules =
|
||||||
|
build_property._SupportedPlatformList = Linux,macOS,Windows
|
||||||
|
build_property.RootNamespace = QuantEngine.Infrastructure
|
||||||
|
build_property.ProjectDir = C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\
|
||||||
|
build_property.EnableComHosting =
|
||||||
|
build_property.EnableGeneratedComInterfaceComImportInterop =
|
||||||
|
build_property.EffectiveAnalysisLevelStyle = 10.0
|
||||||
|
build_property.EnableCodeStyleSeverity =
|
||||||
+8
@@ -0,0 +1,8 @@
|
|||||||
|
// <auto-generated/>
|
||||||
|
global using System;
|
||||||
|
global using System.Collections.Generic;
|
||||||
|
global using System.IO;
|
||||||
|
global using System.Linq;
|
||||||
|
global using System.Net.Http;
|
||||||
|
global using System.Threading;
|
||||||
|
global using System.Threading.Tasks;
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
+1
@@ -0,0 +1 @@
|
|||||||
|
48e35adcfd2c7bd2c7ea0f9fbb0c42d7a075ec73ba1126723ded9dae4555fbab
|
||||||
+17
@@ -0,0 +1,17 @@
|
|||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Infrastructure.deps.json
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Infrastructure.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Infrastructure.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Application.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Core.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Core.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\bin\Debug\net10.0\QuantEngine.Application.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.csproj.AssemblyReference.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.GeneratedMSBuildEditorConfig.editorconfig
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.AssemblyInfoInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.AssemblyInfo.cs
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.csproj.CoreCompileInputs.cache
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEng.BF5EDD9E.Up2Date
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\refint\QuantEngine.Infrastructure.dll
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\QuantEngine.Infrastructure.pdb
|
||||||
|
C:\Temp\data_feed\src\dotnet\QuantEngine.Infrastructure\obj\Debug\net10.0\ref\QuantEngine.Infrastructure.dll
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
+1059
File diff suppressed because it is too large
Load Diff
+17
@@ -0,0 +1,17 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
||||||
|
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
||||||
|
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
||||||
|
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">$(UserProfile)\.nuget\packages\</NuGetPackageRoot>
|
||||||
|
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">C:\Users\kjh20\.nuget\packages\;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
|
||||||
|
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
||||||
|
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<SourceRoot Include="C:\Users\kjh20\.nuget\packages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
||||||
|
<SourceRoot Include="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\" />
|
||||||
|
</ItemGroup>
|
||||||
|
</Project>
|
||||||
+6
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
||||||
|
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<ImportGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
||||||
|
<Import Project="$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\10.0.0\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets" Condition="Exists('$(NuGetPackageRoot)microsoft.extensions.logging.abstractions\10.0.0\buildTransitive\net8.0\Microsoft.Extensions.Logging.Abstractions.targets')" />
|
||||||
|
</ImportGroup>
|
||||||
|
</Project>
|
||||||
@@ -0,0 +1,701 @@
|
|||||||
|
{
|
||||||
|
"version": 3,
|
||||||
|
"targets": {
|
||||||
|
"net10.0": {
|
||||||
|
"Dapper/2.1.79": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/net10.0/Dapper.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Dapper.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"build": {
|
||||||
|
"buildTransitive/net8.0/_._": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"build": {
|
||||||
|
"buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"Npgsql/10.0.3": {
|
||||||
|
"type": "package",
|
||||||
|
"dependencies": {
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions": "10.0.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"lib/net10.0/Npgsql.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/Npgsql.dll": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages/10.0.9": {
|
||||||
|
"type": "package",
|
||||||
|
"compile": {
|
||||||
|
"lib/net10.0/_._": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"lib/net10.0/_._": {
|
||||||
|
"related": ".xml"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"build": {
|
||||||
|
"buildTransitive/net8.0/_._": {}
|
||||||
|
},
|
||||||
|
"runtimeTargets": {
|
||||||
|
"runtimes/win/lib/net10.0/_._": {
|
||||||
|
"assetType": "runtime",
|
||||||
|
"rid": "win"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"framework": ".NETCoreApp,Version=v10.0",
|
||||||
|
"dependencies": {
|
||||||
|
"QuantEngine.Core": "1.0.0"
|
||||||
|
},
|
||||||
|
"compile": {
|
||||||
|
"bin/placeholder/QuantEngine.Application.dll": {}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"bin/placeholder/QuantEngine.Application.dll": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"framework": ".NETCoreApp,Version=v10.0",
|
||||||
|
"compile": {
|
||||||
|
"bin/placeholder/QuantEngine.Core.dll": {}
|
||||||
|
},
|
||||||
|
"runtime": {
|
||||||
|
"bin/placeholder/QuantEngine.Core.dll": {}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"libraries": {
|
||||||
|
"Dapper/2.1.79": {
|
||||||
|
"sha512": "8YijbzgTfmqmQOnVNorYM6K++pxqnW3nJ4aC1sRHzxUA2CcuoJ9gsTem3kgBnPRMc38zZHl4Esb6hAezXIEEuw==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "dapper/2.1.79",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Dapper.png",
|
||||||
|
"dapper.2.1.79.nupkg.sha512",
|
||||||
|
"dapper.nuspec",
|
||||||
|
"lib/net10.0/Dapper.dll",
|
||||||
|
"lib/net10.0/Dapper.xml",
|
||||||
|
"lib/net461/Dapper.dll",
|
||||||
|
"lib/net461/Dapper.xml",
|
||||||
|
"lib/net8.0/Dapper.dll",
|
||||||
|
"lib/net8.0/Dapper.xml",
|
||||||
|
"lib/netstandard2.0/Dapper.dll",
|
||||||
|
"lib/netstandard2.0/Dapper.xml",
|
||||||
|
"readme.md"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
||||||
|
"sha512": "L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"PACKAGE.md",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"buildTransitive/net461/Microsoft.Extensions.DependencyInjection.Abstractions.targets",
|
||||||
|
"buildTransitive/net462/_._",
|
||||||
|
"buildTransitive/net8.0/_._",
|
||||||
|
"buildTransitive/netcoreapp2.0/Microsoft.Extensions.DependencyInjection.Abstractions.targets",
|
||||||
|
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/net462/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/net8.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/net9.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/netstandard2.0/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.dll",
|
||||||
|
"lib/netstandard2.1/Microsoft.Extensions.DependencyInjection.Abstractions.xml",
|
||||||
|
"microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512",
|
||||||
|
"microsoft.extensions.dependencyinjection.abstractions.nuspec",
|
||||||
|
"useSharedDesignerContext.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
||||||
|
"sha512": "FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "microsoft.extensions.logging.abstractions/10.0.0",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"PACKAGE.md",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/Microsoft.Extensions.Logging.Generators.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn3.11/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/Microsoft.Extensions.Logging.Generators.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.0/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/Microsoft.Extensions.Logging.Generators.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/cs/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/de/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/es/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/fr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/it/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/ja/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/ko/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/pl/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/pt-BR/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/ru/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/tr/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/zh-Hans/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"analyzers/dotnet/roslyn4.4/cs/zh-Hant/Microsoft.Extensions.Logging.Generators.resources.dll",
|
||||||
|
"buildTransitive/net461/Microsoft.Extensions.Logging.Abstractions.targets",
|
||||||
|
"buildTransitive/net462/Microsoft.Extensions.Logging.Abstractions.targets",
|
||||||
|
"buildTransitive/net8.0/Microsoft.Extensions.Logging.Abstractions.targets",
|
||||||
|
"buildTransitive/netcoreapp2.0/Microsoft.Extensions.Logging.Abstractions.targets",
|
||||||
|
"buildTransitive/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.targets",
|
||||||
|
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||||
|
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||||
|
"lib/net462/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||||
|
"lib/net462/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||||
|
"lib/net8.0/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||||
|
"lib/net8.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||||
|
"lib/net9.0/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||||
|
"lib/net9.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||||
|
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.dll",
|
||||||
|
"lib/netstandard2.0/Microsoft.Extensions.Logging.Abstractions.xml",
|
||||||
|
"microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512",
|
||||||
|
"microsoft.extensions.logging.abstractions.nuspec",
|
||||||
|
"useSharedDesignerContext.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"Npgsql/10.0.3": {
|
||||||
|
"sha512": "7nb5YzXuvWWJxB0J8DiyL3we+X4FOctZrt0fIBnucOIaIevFEEwGQVZKtiu9olXdlNAK1eNgqSral6r/jlhI4w==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "npgsql/10.0.3",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"README.md",
|
||||||
|
"lib/net10.0/Npgsql.dll",
|
||||||
|
"lib/net10.0/Npgsql.xml",
|
||||||
|
"lib/net8.0/Npgsql.dll",
|
||||||
|
"lib/net8.0/Npgsql.xml",
|
||||||
|
"lib/net9.0/Npgsql.dll",
|
||||||
|
"lib/net9.0/Npgsql.xml",
|
||||||
|
"npgsql.10.0.3.nupkg.sha512",
|
||||||
|
"npgsql.nuspec",
|
||||||
|
"postgresql.png"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages/10.0.9": {
|
||||||
|
"sha512": "F5U2mKPs5okLJbfIud5IMfkcGEe+73ye8/6MwWu84txhyUe7D7azXkFtMePUjirhYxOJ4boGCXpW5uZfgUA3Sw==",
|
||||||
|
"type": "package",
|
||||||
|
"path": "system.text.encoding.codepages/10.0.9",
|
||||||
|
"files": [
|
||||||
|
".nupkg.metadata",
|
||||||
|
".signature.p7s",
|
||||||
|
"Icon.png",
|
||||||
|
"PACKAGE.md",
|
||||||
|
"THIRD-PARTY-NOTICES.TXT",
|
||||||
|
"buildTransitive/net461/System.Text.Encoding.CodePages.targets",
|
||||||
|
"buildTransitive/net462/_._",
|
||||||
|
"buildTransitive/net8.0/_._",
|
||||||
|
"buildTransitive/netcoreapp2.0/System.Text.Encoding.CodePages.targets",
|
||||||
|
"lib/MonoAndroid10/_._",
|
||||||
|
"lib/MonoTouch10/_._",
|
||||||
|
"lib/net10.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net10.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/net462/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net462/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/net8.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net8.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/net9.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/net9.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"lib/netstandard2.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"lib/xamarinios10/_._",
|
||||||
|
"lib/xamarinmac20/_._",
|
||||||
|
"lib/xamarintvos10/_._",
|
||||||
|
"lib/xamarinwatchos10/_._",
|
||||||
|
"runtimes/win/lib/net10.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/net10.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"runtimes/win/lib/net8.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/net8.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"runtimes/win/lib/net9.0/System.Text.Encoding.CodePages.dll",
|
||||||
|
"runtimes/win/lib/net9.0/System.Text.Encoding.CodePages.xml",
|
||||||
|
"system.text.encoding.codepages.10.0.9.nupkg.sha512",
|
||||||
|
"system.text.encoding.codepages.nuspec",
|
||||||
|
"useSharedDesignerContext.txt"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"QuantEngine.Application/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"path": "../QuantEngine.Application/QuantEngine.Application.csproj",
|
||||||
|
"msbuildProject": "../QuantEngine.Application/QuantEngine.Application.csproj"
|
||||||
|
},
|
||||||
|
"QuantEngine.Core/1.0.0": {
|
||||||
|
"type": "project",
|
||||||
|
"path": "../QuantEngine.Core/QuantEngine.Core.csproj",
|
||||||
|
"msbuildProject": "../QuantEngine.Core/QuantEngine.Core.csproj"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"projectFileDependencyGroups": {
|
||||||
|
"net10.0": [
|
||||||
|
"Dapper >= 2.1.79",
|
||||||
|
"Npgsql >= 10.0.3",
|
||||||
|
"QuantEngine.Application >= 1.0.0",
|
||||||
|
"QuantEngine.Core >= 1.0.0",
|
||||||
|
"System.Text.Encoding.CodePages >= 10.0.9"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"packageFolders": {
|
||||||
|
"C:\\Users\\kjh20\\.nuget\\packages\\": {},
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {},
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder": {}
|
||||||
|
},
|
||||||
|
"project": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"restore": {
|
||||||
|
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Infrastructure\\QuantEngine.Infrastructure.csproj",
|
||||||
|
"projectName": "QuantEngine.Infrastructure",
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Infrastructure\\QuantEngine.Infrastructure.csproj",
|
||||||
|
"packagesPath": "C:\\Users\\kjh20\\.nuget\\packages\\",
|
||||||
|
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Infrastructure\\obj\\",
|
||||||
|
"projectStyle": "PackageReference",
|
||||||
|
"fallbackFolders": [
|
||||||
|
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
||||||
|
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
||||||
|
],
|
||||||
|
"configFilePaths": [
|
||||||
|
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
||||||
|
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
||||||
|
],
|
||||||
|
"originalTargetFrameworks": [
|
||||||
|
"net10.0"
|
||||||
|
],
|
||||||
|
"sources": {
|
||||||
|
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
||||||
|
"C:\\Program Files\\dotnet\\library-packs": {},
|
||||||
|
"https://api.nuget.org/v3/index.json": {},
|
||||||
|
"https://nuget.telerik.com/v3/index.json": {}
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"projectReferences": {
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj": {
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj"
|
||||||
|
},
|
||||||
|
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
||||||
|
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"warningProperties": {
|
||||||
|
"warnAsError": [
|
||||||
|
"NU1605"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"restoreAuditProperties": {
|
||||||
|
"enableAudit": "true",
|
||||||
|
"auditLevel": "low",
|
||||||
|
"auditMode": "all"
|
||||||
|
},
|
||||||
|
"SdkAnalysisLevel": "10.0.100"
|
||||||
|
},
|
||||||
|
"frameworks": {
|
||||||
|
"net10.0": {
|
||||||
|
"targetAlias": "net10.0",
|
||||||
|
"dependencies": {
|
||||||
|
"Dapper": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[2.1.79, )"
|
||||||
|
},
|
||||||
|
"Npgsql": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[10.0.3, )"
|
||||||
|
},
|
||||||
|
"System.Text.Encoding.CodePages": {
|
||||||
|
"target": "Package",
|
||||||
|
"version": "[10.0.9, )"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"imports": [
|
||||||
|
"net461",
|
||||||
|
"net462",
|
||||||
|
"net47",
|
||||||
|
"net471",
|
||||||
|
"net472",
|
||||||
|
"net48",
|
||||||
|
"net481"
|
||||||
|
],
|
||||||
|
"assetTargetFallback": true,
|
||||||
|
"warn": true,
|
||||||
|
"frameworkReferences": {
|
||||||
|
"Microsoft.NETCore.App": {
|
||||||
|
"privateAssets": "all"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.100/PortableRuntimeIdentifierGraph.json",
|
||||||
|
"packagesToPrune": {
|
||||||
|
"Microsoft.CSharp": "(,4.7.32767]",
|
||||||
|
"Microsoft.VisualBasic": "(,10.4.32767]",
|
||||||
|
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
||||||
|
"runtime.any.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Collections": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.IO": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
||||||
|
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
||||||
|
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
||||||
|
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Console": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
||||||
|
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.AppContext": "(,4.3.32767]",
|
||||||
|
"System.Buffers": "(,5.0.32767]",
|
||||||
|
"System.Collections": "(,4.3.32767]",
|
||||||
|
"System.Collections.Concurrent": "(,4.3.32767]",
|
||||||
|
"System.Collections.Immutable": "(,10.0.32767]",
|
||||||
|
"System.Collections.NonGeneric": "(,4.3.32767]",
|
||||||
|
"System.Collections.Specialized": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
||||||
|
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
||||||
|
"System.Console": "(,4.3.32767]",
|
||||||
|
"System.Data.Common": "(,4.3.32767]",
|
||||||
|
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
||||||
|
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Debug": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
||||||
|
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Process": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tools": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
||||||
|
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
||||||
|
"System.Drawing.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Dynamic.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Formats.Asn1": "(,10.0.32767]",
|
||||||
|
"System.Formats.Tar": "(,10.0.32767]",
|
||||||
|
"System.Globalization": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Calendars": "(,4.3.32767]",
|
||||||
|
"System.Globalization.Extensions": "(,4.3.32767]",
|
||||||
|
"System.IO": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression": "(,4.3.32767]",
|
||||||
|
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
||||||
|
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
||||||
|
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
||||||
|
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
||||||
|
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipelines": "(,10.0.32767]",
|
||||||
|
"System.IO.Pipes": "(,4.3.32767]",
|
||||||
|
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
||||||
|
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
||||||
|
"System.Linq": "(,4.3.32767]",
|
||||||
|
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
||||||
|
"System.Linq.Expressions": "(,4.3.32767]",
|
||||||
|
"System.Linq.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Linq.Queryable": "(,4.3.32767]",
|
||||||
|
"System.Memory": "(,5.0.32767]",
|
||||||
|
"System.Net.Http": "(,4.3.32767]",
|
||||||
|
"System.Net.Http.Json": "(,10.0.32767]",
|
||||||
|
"System.Net.NameResolution": "(,4.3.32767]",
|
||||||
|
"System.Net.NetworkInformation": "(,4.3.32767]",
|
||||||
|
"System.Net.Ping": "(,4.3.32767]",
|
||||||
|
"System.Net.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Net.Requests": "(,4.3.32767]",
|
||||||
|
"System.Net.Security": "(,4.3.32767]",
|
||||||
|
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
||||||
|
"System.Net.Sockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets": "(,4.3.32767]",
|
||||||
|
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
||||||
|
"System.Numerics.Vectors": "(,5.0.32767]",
|
||||||
|
"System.ObjectModel": "(,4.3.32767]",
|
||||||
|
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
||||||
|
"System.Private.Uri": "(,4.3.32767]",
|
||||||
|
"System.Reflection": "(,4.3.32767]",
|
||||||
|
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
||||||
|
"System.Reflection.Emit": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
||||||
|
"System.Reflection.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Reflection.Metadata": "(,10.0.32767]",
|
||||||
|
"System.Reflection.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
||||||
|
"System.Resources.Reader": "(,4.3.32767]",
|
||||||
|
"System.Resources.ResourceManager": "(,4.3.32767]",
|
||||||
|
"System.Resources.Writer": "(,4.3.32767]",
|
||||||
|
"System.Runtime": "(,4.3.32767]",
|
||||||
|
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
||||||
|
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Handles": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices": "(,4.3.32767]",
|
||||||
|
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Loader": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Numerics": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
||||||
|
"System.Security.AccessControl": "(,6.0.32767]",
|
||||||
|
"System.Security.Claims": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
||||||
|
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
||||||
|
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal": "(,4.3.32767]",
|
||||||
|
"System.Security.Principal.Windows": "(,5.0.32767]",
|
||||||
|
"System.Security.SecureString": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding": "(,4.3.32767]",
|
||||||
|
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
||||||
|
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
||||||
|
"System.Text.Encodings.Web": "(,10.0.32767]",
|
||||||
|
"System.Text.Json": "(,10.0.32767]",
|
||||||
|
"System.Text.RegularExpressions": "(,4.3.32767]",
|
||||||
|
"System.Threading": "(,4.3.32767]",
|
||||||
|
"System.Threading.AccessControl": "(,10.0.32767]",
|
||||||
|
"System.Threading.Channels": "(,10.0.32767]",
|
||||||
|
"System.Threading.Overlapped": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks": "(,4.3.32767]",
|
||||||
|
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
||||||
|
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
||||||
|
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
||||||
|
"System.Threading.Thread": "(,4.3.32767]",
|
||||||
|
"System.Threading.ThreadPool": "(,4.3.32767]",
|
||||||
|
"System.Threading.Timer": "(,4.3.32767]",
|
||||||
|
"System.ValueTuple": "(,4.5.32767]",
|
||||||
|
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
||||||
|
"System.Xml.XDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlDocument": "(,4.3.32767]",
|
||||||
|
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath": "(,4.3.32767]",
|
||||||
|
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"logs": [
|
||||||
|
{
|
||||||
|
"code": "NU1510",
|
||||||
|
"level": "Warning",
|
||||||
|
"warningLevel": 1,
|
||||||
|
"message": "PackageReference System.Text.Encoding.CodePages은(는) 잘리지 않습니다. 이 패키지는 불필요할 수 있으므로 종속성에서 제거하는 것이 좋습니다.",
|
||||||
|
"libraryId": "System.Text.Encoding.CodePages",
|
||||||
|
"targetGraphs": [
|
||||||
|
"net10.0"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user